`
yangshen998
  • 浏览: 1248392 次
文章分类
社区版块
存档分类
最新评论

SQL SERVER 2005中的数据参照完整性

 
阅读更多

SQL SERVER 2005中的数据参照完整性

左直拳

因为工作的关系,最近用上了SQL SERVER 2005

但为了设置两个表间的数据参照完整性,着实费了一些工夫。变化真是太大了,变得真不敢相信这还是微软的SQL SERVER。以前,有多少人是因为SQL SERVER的简单易用,傻瓜式操作而使用它的呢?也许功能是强大了好多,可也不至于要改得面目全非吧。当初,SQL SERVER2000是多么的好用啊。

2005,设置两个表间的数据参照完整性是这样的:

1、 SQL SERVER MANAGEMENT STUDIO中(企业管理器没有了),选中要添加外键的表,右击,选“修改”。注意要选哪个表。假如表A删了一条记录,表B也要删一条对应的记录,这时候应该在表B上设定关系,A是主表,B是从表;

2、 打开该表后,按照帮助的指示,去找“关系”按扭,没有,找不到,这时要右击,在弹出菜单中选“关系”;

3、 选“表和列规范”,这时右边变魔术般出现了一个按扭,示意可以点击浏览(如果不点呢,对不起,按扭就一直隐藏着,呆上千万年,在漫长的时光流逝中,静静地等待阁下用鼠标去点击那个看起来好象不可编辑的文本行,以图被唤醒而魔术般地出现,给你一个绝对的惊喜——喔,好浪漫哦!)

4、 选好关联表后,回来,打开折叠的“INSERTUPDATE规范”,这时其下有子节点:更新操作,删除操作。删除操作有四个选项:无操作、层叠、设置空,设置默认值。它们是什么意思?谁能告诉我?查帮助,输入“INSERTUPDATE规范”是没有的,输入“层叠”,也是没有的。里面的帮助很有意思,A页面说了没两句,下面就有一个链接,说如果要看更详细的帮助,可以点B页面,然后到了B页面,说了两句,又推荐你回到A页面,跳来跳去,上面的帮助全是狗屁。

以前有个家伙开着直升机迷路了,于是打着一个条幅挂在飞机上,上写:我在哪里?结果一幢大厦里的人看见了,也打出一个条幅,上写:你在飞机上。最后得知,这幢大厦的人是微软公司的帮助文档小组。

帮助没有什么帮助性,在网上寻寻觅觅也没有结果,只好逐个试了。最后发现删除规范里选“层叠”可以实现两个表的数据参照完整性,即两个表的记录一起被删除。开始时选了“设置默认值”,结果只将对应表中的外键值置为NULL

我现在对SQL SERVER2005还很不熟悉,觉得它很难用,怎么看怎么别扭,太复杂了,SQL SERVER2000之前的优点几乎丧失殆尽。查询分析器也没有了。微软好象走进了一个死胡同,做的一切,似乎在自掘坟墓。

个人感觉而已。

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics