alter table yourtable (newid bigint primary key)

解决方案 »

  1.   

    ALTER TABLE
    通过更改、添加、除去列和约束,或者通过启用或禁用约束和触发器来更改表的定义。语法
    ALTER TABLE table 
    { [ ALTER COLUMN column_name 
        { new_data_type [ ( precision [ , scale ] ) ]
            [ COLLATE < collation_name > ]
            [ NULL | NOT NULL ]
            | {ADD | DROP } ROWGUIDCOL }
        ] 
        | ADD
            { [ < column_definition > ]
            | column_name AS computed_column_expression
            } [ ,...n ]
        | [ WITH CHECK | WITH NOCHECK ] ADD
            { < table_constraint > } [ ,...n ] 
        | DROP
            { [ CONSTRAINT ] constraint_name 
                | COLUMN column } [ ,...n ] 
        | { CHECK | NOCHECK } CONSTRAINT
            { ALL | constraint_name [ ,...n ] }
        | { ENABLE | DISABLE } TRIGGER
            { ALL | trigger_name [ ,...n ] } 
    }< column_definition > ::=
        { column_name data_type }
        [ [ DEFAULT constant_expression ] [ WITH VALUES ]
        | [ IDENTITY [ ( seed , increment ) [ NOT FOR REPLICATION ] ] ]
            ] 
        [ ROWGUIDCOL ]
        [ COLLATE < collation_name > ]
        [ < column_constraint > ] [ ...n ]< column_constraint > ::=
        [ CONSTRAINT constraint_name ]
        { [ NULL | NOT NULL ]
            | [ { PRIMARY KEY | UNIQUE }
                [ CLUSTERED | NONCLUSTERED ]
                [ WITH FILLFACTOR = fillfactor ]
                [ ON { filegroup | DEFAULT } ]
                ] 
            | [ [ FOREIGN KEY ]
                REFERENCES ref_table [ ( ref_column ) ]
                [ ON DELETE { CASCADE | NO ACTION } ]
                [ ON UPDATE { CASCADE | NO ACTION } ]
                [ NOT FOR REPLICATION ]
                ] 
            | CHECK [ NOT FOR REPLICATION ]
                ( logical_expression ) 
        }< table_constraint > ::=
        [ CONSTRAINT constraint_name ]
        { [ { PRIMARY KEY | UNIQUE }
            [ CLUSTERED | NONCLUSTERED ]
            { ( column [ ,...n ] ) } 
            [ WITH FILLFACTOR = fillfactor ]
            [ ON { filegroup | DEFAULT } ]
            ] 
            |    FOREIGN KEY
                [ ( column [ ,...n ] ) ]
                REFERENCES ref_table [ ( ref_column [ ,...n ] ) ]
                [ ON DELETE { CASCADE | NO ACTION } ]
                [ ON UPDATE { CASCADE | NO ACTION } ]
                [ NOT FOR REPLICATION ]
            | DEFAULT constant_expression
                [ FOR column ] [ WITH VALUES ]
            |    CHECK [ NOT FOR REPLICATION ]
                ( search_conditions ) 
        }参数
    new_data_type是要更改的列的新数据类型。要更改的列的 new_data_type 应符合下列准则: 原来的数据类型必须可以隐式转换为新数据类型。
    new_data_type 类型不能为 timestamp。
    对 ALTER COLUMN,ANSI 空默认值始终打开;如果没有指定,列将可为空。
    对 ALTER COLUMN,ANSI 填充始终打开。
    如果要更改的列是标识列,new_data_type 必须是支持标识属性的数据类型。
    将忽略 SET ARITHABORT 的当前设置。ALTER TABLE 语句的行为如同 ARITHABORT 选项为 ON 时一样。 
      

  2.   

    chenyuandxm(一剑平江湖:
    不行,我刚才试了不行,能不能说得明白一点.