2012-02-07 85 views
1

當我嘗試從數據庫腳本CREATE表,它並不總是編寫單一CREATE TABLE內的所有列。一些列將通過ALTER TABLE添加。爲什麼是這樣? SQL服務器是否捕獲架構修改的歷史記錄,並且在初始創建之後添加的任何列都使用ALTERS編寫腳本?這很重要的原因是我編寫的腳本將在VS數據庫項目中使用,並且無法處理ALTER語句。SQL管理工作室「表 - >腳本創建」創建ALTERs

 
CREATE TABLE [dbo].[tblPackageType] 
(
    [PackageTypeId] [int] IDENTITY(1,1) NOT FOR REPLICATION NOT NULL, 
    [PackageTypeDesc] [varchar](50) NOT NULL 
) ON [PRIMARY] 
ALTER TABLE [dbo].[tblPackageType] ADD [EDIcode] [varchar](10) NOT NULL 
ALTER TABLE [dbo].[tblPackageType] ADD [EDI211] [varchar](10) NULL 

回答

1

在SQL Server捕捉模式修改的歷史,並在初始創建後添加任何列與改變腳本?

是的。

如果您想要解決這個問題,您可以將腳本更改爲包含所有需要的列的創建,並且在您運行後,更新後的定義將被保存。