如何将具有默认值的列添加到SQL Server 2000/SQL Server 2005中的现有表中?
当前回答
SQL Server+更改表+添加列+默认值uniqueidentifier。。。
ALTER TABLE [TABLENAME] ADD MyNewColumn INT not null default 0 GO
其他回答
ALTER TABLE tbl_table ADD int_column int NOT NULL DEFAULT(0)
从该查询中,可以添加一列默认值为0的数据类型整数。
ALTER TABLE ADD ColumnName {Column_Type} Constraint
MSDN文章ALTERTABLE(Transact-SQL)具有所有altertable语法。
ALTER TABLE Protocols
ADD ProtocolTypeID int NOT NULL DEFAULT(1)
GO
DEFAULT的包含使用默认值填充现有行中的列,因此不违反NOT NULL约束。
步骤1.首先,您必须使用添加字段来更改表
alter table table_name add field field_name data_type
步骤2创建默认值
USE data_base_name;
GO
CREATE DEFAULT default_name AS 'default_value';
步骤3然后您必须执行此过程
exec sp_bindefault 'default_name' , 'schema_name.table_name.field_name'
示例-
USE master;
GO
EXEC sp_bindefault 'today', 'HumanResources.Employee.HireDate';
或者,可以添加默认值,而不必显式命名约束:
ALTER TABLE [schema].[tablename] ADD DEFAULT ((0)) FOR [columnname]
如果在创建此约束时存在现有默认约束的问题,则可以通过以下方式删除这些约束:
alter table [schema].[tablename] drop constraint [constraintname]
推荐文章
- 如何在Ruby On Rails中使用NuoDB手动执行SQL命令
- 查询JSON类型内的数组元素
- 确定记录是否存在的最快方法
- 获得PostgreSQL数据库中当前连接数的正确查询
- 在SQL选择语句Order By 1的目的是什么?
- 从现有模式生成表关系图(SQL Server)
- 我如何循环通过一组记录在SQL Server?
- 数据库和模式的区别
- 如何在SQL Server中一次更改多个列
- 如何从命令行通过mysql运行一个查询?
- 外键约束可能导致循环或多条级联路径?
- 使用LIMIT/OFFSET运行查询,还可以获得总行数
- 当恢复sql时,psql无效命令\N
- 货币应该使用哪种数据类型?
- 如何选择每一行的列值不是独特的