SET ANSI_NULLS ON 
GO 
SET QUOTED_IDENTIFIER ON 
GO 
IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[SMT_xxnewssort]') AND type in (N'U')) 
BEGIN 
CREATE TABLE [dbo].[SMT_xxnewssort]( 
[SMT_id] [int] IDENTITY(1,1) NOT NULL, 
[SMT_newssort] [nvarchar](50) COLLATE Chinese_PRC_CI_AS NULL, 
[SMT_date] [smalldatetime] NULL CONSTRAINT [DF_SMT_xxnewssort_SMT_date]  DEFAULT (getdate()) 
) ON [PRIMARY] 
END 这段语句在我的机器(SQL Server 2005 Express)上执行没有任何问题“命令已成功完成。”。

解决方案 »

  1.   


    “修改”的内容太宽泛了,
    (1)列的增、删
    (2)列的数据类型的变更(注意修改前后数据类型的兼容性,如果已有数据的话有可能修改失败——如 nvarchar(10) '字符值' 你要修改为 int 那是不行的)
    (3)约束的增、删、改
    (4)……------------------------
    问:
    (1)你要修改成什么样的?
    (2)如果表中已有数据,你打算如何处理?
      

  2.   


    只能创建表,不能这样alter table