在SQL2005中,使用默认值约束时出现错误 default getdate() for birthday 'for' 附近有语法错误。

这是完整代码,createtablestudent(idintidentitynotnull,stu_nochar(10)notnull,namevarchar(20)n... 这是完整代码,
create table student
(
id int identity not null,
stu_no char(10) not null,
name varchar(20) not null,
sex char(2),
birthday datetime null default getdate(),
constraint PK_student_stu_no primary key(stu_no),
constraint CK_student_sex check(sex='男'or sex='女'),
constraint CK_student_birthday check(birthday!>getdate()),
constraint UQ_student_name unique(name),
constraint DF_student_birthday default getdate()for birthday
)
当除去constraint DF_student_birthday default getdate()for birthday
以后没有错误,在创建时不使用默认时
创建表以后
利用以下代码添加也没有错误,
alter table student add constraint DF_student_birthday default getdate() for birthday能够正常执行,一种解决办法是直接在birthday datetime 后加default getdate(),但是我想要的是自己可以定义该约束名字,求解,谢谢
展开
 我来答
随风z9pd
2011-09-07 · TA获得超过777个赞
知道小有建树答主
回答量:442
采纳率:0%
帮助的人:588万
展开全部
在create table中,birthday字段这么定义:
birthday datetime null constraint DF_student_birthday default getdate()
就可以了。
下面那句constraint DF_student_birthday default getdate()for birthday不需要了
更多追问追答
追问
那我原来那个代码哪里错了,你知道吗?
追答
缺省约束(就是你给birthday定义的那个)不能在创建表的时候定义,只能向已创建好的表中添加缺省约束
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式