SQL 服务器:用固定值更改列

SQL Server : alter column with fix value

我有一个 table 这个专栏

ALTER TABLE TestTable ADD TestColumn AS '1'

如何将其更改为 2

ALTER TABLE TestTable ALTER COLUMN TestColumn AS '2'

无效。

Incorrect syntax near the keyword 'AS'.

删除和添加列不是一个选项。

你可以试试这个

alter table TestTable 
add default(2) for TestColumn 

因为它是 constant 列,您应该重新创建它:

ALTER TABLE TestTable DROP COLUMN TestColumn;
ALTER TABLE TestTable ADD TestColumn AS '2';

ALTER TABLE ... ALTER COLUMN ... 语法不允许 <computed_column_definition> - 参见 specification.

ALTER COLUMN 仅允许以下内容:

ALTER COLUMN column_name   
{   
    [ type_schema_name. ] type_name   
        [ (   
            {   
               precision [ , scale ]   
            }   
        ) ]   
    [ COLLATE collation_name ]   
    [ NULL | NOT NULL ] 
}