俺是超级低手菜鸟,请帮一下忙!!!

iwin 2000-08-08 06:20:00
在定义表时,可以定义各表之间的关系;在用SQL语句查询时可以用连接查询。请问这两种方式有何不同?哪个更灵活?哪个功能更强?在实际运用中应该怎样决定使用哪种方法?

请各位高手为我详细讲解一下。另外,我还有两条关于MS SQLSERVER7的问题还没有满意的答复,能否也帮忙看一下!!
...全文
172 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
iwin 2000-08-09
  • 打赏
  • 举报
回复
lzliming,是否应该这样理解你的意思:
如果我在数据库中使用了约束,当我想删除某一条记录时,系统就会帮我检查是否此操作是否破坏了数据库的一致性和完整性,如果是,则显示错误提示,并且不允许删除操作。

但我有一个看法,上述情况应该是管理员直接对数据库进行手工操作时约束带来的好处。如果是编程完成此操作,则在设计阶段程序员可以从关系图中得到提示的好处,而在程序可以稳定运行时有无约束应该是没有区别吧?

请各位高手指正!!谢谢。
pjy 2000-08-09
  • 打赏
  • 举报
回复
在实际使用中,我觉得使用连接查询比约束更灵活一些。如果你需要维护一些数据的稳定性,可通过触发器或在程序前端用程序控制。
lzliming 2000-08-09
  • 打赏
  • 举报
回复
使用约束,实际上是利用系统替你完成一些维护数据一致性和完整性的工作。
相反,如果用编程方式来实现就麻烦,维护量大,而且直接对表操作时就很
难保证数据的两性。
限制嘛,比如在wwwunix举例中,如果你删除a中某学号,而b中还存在该学
号的数据,那系统就不允许这个删除动作。只有先把b中有关该学号数据删除,
才能删a中该学号。
可以看看一些有关关系数据库的知识,理解关系数据库的两性。
gawj 2000-08-09
  • 打赏
  • 举报
回复
你去理解一下范式吧,这是设计数据库必须掌握的。并且要多练。
lzliming 2000-08-09
  • 打赏
  • 举报
回复
有些东西是理论上的. 我就碰到过由于一个bug,a表的数据删掉了,
而b表相关数据却没删掉(在程序中进行约束),结果b表数据
泛滥,给应用和系统造成大麻烦。
iwin 2000-08-09
  • 打赏
  • 举报
回复
请问什么时候应该使用约束,什么时候又不要使用呢?使用后会带来什么的限制和带来什么好处?
gawj 2000-08-08
  • 打赏
  • 举报
回复
维护数据的一致性和完整性
kankan 2000-08-08
  • 打赏
  • 举报
回复
定义表之间的关系是保证数据完整性;构造用户看到的数据使用视图,固定的“连接”可以使用视图表示,会方便你的查询语句的构造;连接查询一般是为了构造一些临时性的查询,它相对比较灵活。
iwin 2000-08-08
  • 打赏
  • 举报
回复
约束有什么作用?
wwwunix 2000-08-08
  • 打赏
  • 举报
回复
表与表之间的关系是一中约束关系,如:表A有两个字段:ID是学号,NAME是姓名;表B有两个字段:ID是学号,GRADE是成绩。那么表B的ID倚赖于表A的ID,这种关系即约束关系。如果要查询学生的成绩,则可用以下语句:select a.name,b.grade from a,b where a.id=b.id。这就是连接查询。
huntout 2000-08-08
  • 打赏
  • 举报
回复
表間關係是約束,連接查詢是查詢方式,不是一回事。︰)

34,590

社区成员

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

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