default约束是否能做表约束?

ellenonion 2008-01-11 05:26:29
CREATE TABLE factory_process
(event_type int,
event_time datetime,
event_site char(50),
event_desc char(1024),
default getdate() for event_time )

以上代码希望将default约束作为表约束来处理,可总是报for附近有语法错误,为什么??
...全文
385 29 打赏 收藏 转发到动态 举报
写回复
用AI写文章
29 条回复
切换为时间正序
请发表友善的回复…
发表回复
ellenonion 2008-01-17
  • 打赏
  • 举报
回复
ms-help://MS.SQLCC.v9/MS.SQLSVR.v9.zh-CHS/udb9/html/a57ac015-71a3-4811-8998-a8412f8cb3f3.htm

或者你试试点这个看能不能看到
ellenonion 2008-01-17
  • 打赏
  • 举报
回复
你在联机帮助中查找‘表约束’,就会看到的。
这个贴图是不是和百度吧一样,只能引用Internet上的地址啊,我还要上传,好麻烦的。
w2jc 2008-01-16
  • 打赏
  • 举报
回复
约束分为表约束和列约束,sqlserver2000/2005的联机帮助有很清楚的说明。
---------------------------------------------------
楼主所说的在哪里?给个链接我去看看....

好像没有听说过表约束和列约束的说法,或者仅只是由于其创建的位置不一样而得名??

阻击手在2楼和18楼的代码都是对的。都生成了一个默认值约束,效果完全一样。

唯一的不同是,2楼的default没有名字,MSSQL会自动为其指定一个名字,类似 DF__ factory_process__event___151B244E 这样的名字;
18楼的default是有名字的,叫做 def_datetime,这样做的好处是可以通过代码维护表的不同版本。

wlzd3636 2008-01-16
  • 打赏
  • 举报
回复
default 应该属于 必需数据(required data) 约束
wlzd3636 2008-01-16
  • 打赏
  • 举报
回复
刚毕业 请高手多多指导:) 菜菜鸟
wlzd3636 2008-01-16
  • 打赏
  • 举报
回复
ms_sql 不等于 ansi/iso 的标准 只是根据这个标准 来制定的. ansi/iso sql 是协议.
wlzd3636 2008-01-16
  • 打赏
  • 举报
回复
理解约束
分为7种:
1:断言(assertions)
2:域 domains
3:检查约束(check constraints)
4:外键约束 (foreign key constraints)
5:主键约束(primary key constraints)
6:必需数据(required data)
6:唯一性约束(uniqueness constraints)
每种约束类型在维护数据库的完整性起着不同的作用

这个是ansi/iso sql中定义的
ms_sql是根据这个标准来制定的

不同的数据库会有差异.

-狙击手- 2008-01-16
  • 打赏
  • 举报
回复
MS SQL Server 提供多种强制列中数据完整性的机制:

Ø 非空约束

Ø PRIMARY KEY 约束

Ø FOREIGN KEY 约束

Ø UNIQUE 约束

Ø CHECK 约束

Ø DEFAULT 定义



-狙击手- 2008-01-16
  • 打赏
  • 举报
回复
大部 分网上资料 及MSSQL本身的帮助关于MSSQL的约束大家可以查查,

如果我没理解错 仅符合了非空的约束


但是也看到有文章如楼主说的那样


yiyi_wx 2008-01-16
  • 打赏
  • 举报
回复
我的话也有点过激了。。。。
向楼主道歉~

顺便说一句,sql版是相当不错的板块呢
大家都很有热情,很有责任心的~

同时学习~

^_^
areswang 2008-01-16
  • 打赏
  • 举报
回复
楼主,没事了,人家高手也没说什么,是吧?学习
-狙击手- 2008-01-16
  • 打赏
  • 举报
回复
学习回来

CREATE   TABLE   factory_process 
(event_type int,
event_time datetime,
event_site char(50),
event_desc char(1024) )

go

alter table factory_process
add constraint def_datetime default getdate() for event_time

go



drop table factory_process
ellenonion 2008-01-16
  • 打赏
  • 举报
回复
我是很感谢大家的回复的,这是我第一次在这发帖呢,我是认为大家都是些高手啊,只是看到回复有些失望,而且对问题的回复还这么绝对,所以发了些感慨,过激之处敬请谅解啊,以后好友很多东西要和大家交流呢!
yiyi_wx 2008-01-15
  • 打赏
  • 举报
回复
依依生气了,后果很严重
-------

后果相当严重!!!
首先我的技术很烂,帮不了LZ
但是我知道
大家来这里就是相互学习的
有那么多人来帮你解答问题,无论人家回答的对错,我们都应该心存感激的
即便真的是回答错了,说出来就好了
干吗非得说出那样的话,摆出一副盛气凌人的架子!
qiuming0306 2008-01-15
  • 打赏
  • 举报
回复
阿门!偶的神啊!太疯狂了!
飘过....
wzy_love_sly 2008-01-15
  • 打赏
  • 举报
回复
依依生气了,后果很严重
yiyi_wx 2008-01-15
  • 打赏
  • 举报
回复

各位还是先学习学习再来回答问题吧。
--------------

LZ如果不满意大家的回答也不用说出如此的话吧~~~
sp4 2008-01-15
  • 打赏
  • 举报
回复
一身大汗...........
sp4 2008-01-15
  • 打赏
  • 举报
回复
哈哈 !LZ怎么这么解释? 汗
-狙击手- 2008-01-15
  • 打赏
  • 举报
回复
各位还是先学习学习再来回答问题吧。

---

楼主圣明,我回家学习去了!!
加载更多回复(9)

34,587

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧