表codex 中已经有 stopflag列
请问 怎样用语句 是stopflag 的默认值 为 0
8 个解决方案
#1
--(1)查看某表的某个字段是否有默认值约束
select a.name as 用户表,b.name as 字段名,d.name as 字段默认值约束
from sysobjects a
inner join syscolumns b on (a.id=b.id)
inner join syscomments c on ( b.cdefault=c.id )
inner join sysobjects d on (c.id=d.id)
where a.name='tb_fqsj'and b.name='排污口号'
--(2)如果有默认值约束,删除对应的默认值约束
declare @tablename varchar(30)
declare @fieldname varchar(50)
declare @sql varchar(300)
set @tablename='tb_fqsj'
set @fieldname='排污口号'
set @sql=''
select @sql=@sql+'
alter table ['+a.name+'] drop constraint ['+d.name+']'
from sysobjects a
join syscolumns b on a.id=b.id
join syscomments c on b.cdefault=c.id
join sysobjects d on c.id=d.id
where a.name=@tablename and b.name=@fieldname
exec(@sql)
--(3)添加默认值约束
ALTER TABLE tb_fqsj
ADD DEFAULT ('01') FOR 排污口号 WITH VALUES
#2
ALTER TABLE codex ADD CONSTRAINT DEF_stopflag DEFAULT 0 FOR stopflag WITH VALUES
#3
alter table codex add constraint sd default(0) for stopflag
#4
参考1楼的 总体意思就是如果你的列里面有约束 就删除对应的默认值约束 再添加
没有约束的话
就直接ALTER TABLE tb_fqsj
ADD DEFAULT (0) FOR stopflag WITH VALUES
没有约束的话
就直接ALTER TABLE tb_fqsj
ADD DEFAULT (0) FOR stopflag WITH VALUES
#5
F. 添加具有默认值的可为空的列
下例添加可为空的、具有 DEFAULT 定义的列,并使用 WITH VALUES 为表中的各现有行提供值。如果没有使用 WITH VALUES,那么每一行的新列中都将具有 NULL 值。
ALTER TABLE MyTable
ADD AddDate smalldatetime NULL
CONSTRAINT AddDateDflt
DEFAULT getdate() WITH VALUES
#6
ok 了 谢谢
#7
去结贴了
#8
ALTER TABLE a
ADD DEFAULT 0 FOR flag
#1
--(1)查看某表的某个字段是否有默认值约束
select a.name as 用户表,b.name as 字段名,d.name as 字段默认值约束
from sysobjects a
inner join syscolumns b on (a.id=b.id)
inner join syscomments c on ( b.cdefault=c.id )
inner join sysobjects d on (c.id=d.id)
where a.name='tb_fqsj'and b.name='排污口号'
--(2)如果有默认值约束,删除对应的默认值约束
declare @tablename varchar(30)
declare @fieldname varchar(50)
declare @sql varchar(300)
set @tablename='tb_fqsj'
set @fieldname='排污口号'
set @sql=''
select @sql=@sql+'
alter table ['+a.name+'] drop constraint ['+d.name+']'
from sysobjects a
join syscolumns b on a.id=b.id
join syscomments c on b.cdefault=c.id
join sysobjects d on c.id=d.id
where a.name=@tablename and b.name=@fieldname
exec(@sql)
--(3)添加默认值约束
ALTER TABLE tb_fqsj
ADD DEFAULT ('01') FOR 排污口号 WITH VALUES
#2
ALTER TABLE codex ADD CONSTRAINT DEF_stopflag DEFAULT 0 FOR stopflag WITH VALUES
#3
alter table codex add constraint sd default(0) for stopflag
#4
参考1楼的 总体意思就是如果你的列里面有约束 就删除对应的默认值约束 再添加
没有约束的话
就直接ALTER TABLE tb_fqsj
ADD DEFAULT (0) FOR stopflag WITH VALUES
没有约束的话
就直接ALTER TABLE tb_fqsj
ADD DEFAULT (0) FOR stopflag WITH VALUES
#5
F. 添加具有默认值的可为空的列
下例添加可为空的、具有 DEFAULT 定义的列,并使用 WITH VALUES 为表中的各现有行提供值。如果没有使用 WITH VALUES,那么每一行的新列中都将具有 NULL 值。
ALTER TABLE MyTable
ADD AddDate smalldatetime NULL
CONSTRAINT AddDateDflt
DEFAULT getdate() WITH VALUES
#6
ok 了 谢谢
#7
去结贴了
#8
ALTER TABLE a
ADD DEFAULT 0 FOR flag