导航
  • 主页
  • 基础类
  • 应用实例
  • 新技术前沿

default的小问题

zhangyanli 2007-12-23 09:47:04
请问:
ALTER TABLE abc
ALTER COLUMN dt datetime default(getdate())
在default附近有语法错误

建库:
create table abc
(
name varchar(3) not null,
id int not null,
age int not null,
dt datetime not null default(getdate())
)
...全文
108 点赞 收藏 8
写回复
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
-狙击手- 2007-12-23
select
[约束名]=a.Name,
[默认值]=b.text
from
sysobjects a
join
syscomments b on a.ID=b.ID
where parent_obj=object_id('abc') and xtype='D'
回复
zhangyanli 2007-12-23
问题是我创建时没有约束名,所以没法drop
回复
-狙击手- 2007-12-23



create table abc
(
name varchar(3) not null,
id int not null,
age int not null,
dt datetime not null CONSTRAINT AddDateDflt default(getdate())
)

go

insert abc(name,id,age) select 'asd',1,10
select * from abc




ALTER TABLE abc drop constraint AddDateDflt


insert abc(name,id,age,dt) select 'asf',1,10,'2007-12-22'
select * from abc

drop table abc
/*
(所影响的行数为 1 行)

name id age dt
---- ----------- ----------- ------------------------------------------------------
asd 1 10 2007-12-23 22:31:01.237

(所影响的行数为 1 行)


(所影响的行数为 1 行)

name id age dt
---- ----------- ----------- ------------------------------------------------------
asd 1 10 2007-12-23 22:31:01.237
asf 1 10 2007-12-22 00:00:00.000

(所影响的行数为 2 行)
*/
回复
中国风 2007-12-23
create table T(ID int default (1))

--
select
[约束名]=a.Name
[默认值]=b.text
from
sysobjects a
join
syscomments b on a.ID=b.ID
where parent_obj=object_id('T') and xtype='D'

--
alter table T drop constraint 约束名
回复
zhangyanli 2007-12-23
我不是建的约束,怎么去掉默认值啊
回复
dawugui 2007-12-23
如果列已有默认值,必须除去旧默认值后才能添加新默认值。
回复
dawugui 2007-12-23
建库:
create table abc
(
name varchar(3) not null,
id int not null,
age int not null,
dt datetime not null default(getdate())
)
你不已经创建成功了吗?
回复
wzy_love_sly 2007-12-23
alter table table add constraint px default getdate() for dt
回复
发动态
发帖子
MS-SQL Server
创建于2007-09-28

3.2w+

社区成员

MS-SQL Server相关内容讨论专区
申请成为版主
社区公告
暂无公告