数据库有必要建立表与表之间的关系吗? 如果有,可以用sql代码来建立么?

如题所述

不是必须的要建关系的,看业务的需要。
举个例子, 比如你有个 图书馆管理系统。
有个图书表[ 图书ID,图书名... ],有个借阅记录表 [ 借阅人ID, 图书ID, 借阅时间...]。
某些书遗失了,或者报废了,需要从数据库表中删除。
希望书删除的同时, 顺便把这本书的借阅记录,顺便也一起删除了。
那么这种情况下,创建个 DELETE CASCADE 外键约束, 你就不必去写存储过程/触发器之类的去做
当删除书的时候,还要删除借阅记录 的代码了。 数据库自动帮你完成。

关系的另外一个用处,就是避免垃圾数据。
还是上面的那个例子
有了外键关联以后,
如果你的操作错误,向 借阅记录表 中 INSERT 数据的时候, 填写了一个不存在的 图书ID
那么数据库就会提示你,说这条记录不能插入。
你就会回去仔细看看,你刚才输入的 图书ID, 在 图书表里面,到底有没有。

参考资料:http://hi.baidu.com/wangzhiqing999/blog/item/969f70fa84e2873e5d600821.html

温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-03-15
表与表之间的关系有外键约束和触发器约束等,这两者都可以通过sql代码建立,有时间看看T-sql语言,你就懂了。
相似回答