将具有默认值的列添加到 SQL Server 中的现有表
技术问答
350 人阅读
|
0 人回复
|
2023-09-11
|
如何在SQL Server 2000 / SQL Server 2005现有表中添加默认值列?) Z/ L( K! @" C. U* q
2 l x: W/ H8 z+ U8 l 解决方案: 8 T8 J. e! V$ E
句法:ALTER TABLE {TABLENAME} ADD {COLUMNNAME} {TYPE} {NULL|NOT NULL} CONSTRAINT {CONSTRAINT_NAME} DEFAULT {DEFAULT_VALUE}WITH VALUES1 `% _5 E& d+ Z
例子:ALTER TABLE SomeTable ADD SomeCol Bit NULL --Or NOT NULL. CONSTRAINT D_SomeTable_SomeCol --When Omitted a Default-Constraint Name is autogenerated. DEFAULT (0)--Optional Default-Constraint.WITH VALUES --Add if Column is Nullable and you want the Default Value for Existing Records.
1 T" z2 i# l1 G; @ I4 ? 笔记:可选约束名称:5 B/ v3 H8 f) o$ C7 K
如果您省略CONSTRAINT D_SomeTable_SomeCol,SQL Server 自动生成7 n1 g7 d A6 q i) a
有趣名称的默认约束,如:DF__SomeTa__SomeC__4FB7FEF66 W! S5 T# S: ^) B" t' ?7 p0 M' x
可选的 With-Values 语句:
% Y7 ~3 I1 I7 l5 N6 T/ `) D仅 当WITH VALUES您的列为 Nullable7 o9 ~3 O/ r W$ r, P
你想在现有记录中使用默认值。( b* z5 K% S* x1 R q' N0 J
如果您的 Column 是NOT NULL,无论您是否指定,它都会自动使用
1 H( D" J7 l- M7 T' L/ E 所有现有记录的默认值WITH VALUES。# A% @% X4 ^) k6 D; d
如何使用插入默认约束:*- W: @; d! v6 n3 q
如果您将记录插入SomeTable并且不*指定SomeCol如果值,默认为0。
2 H$ j& o* o! I- ?- u( L6 Q r" H如果入 Record**并***SpecifySomeCol的值作为NULL(而且你的列允许空值),3 T( {& b; C# I* \
默许约束不会***被使用,NULL并将作为值插入。 |
|
|
|
|
|