资源描述:
《数据库的设计概要》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、/*数据库的设计概要:1.每一个项不可分割2.表中的每一条数据只描述一件事情,且具有为唯一的标示符3.每个表中不存在其他表的非主键思想:实际关系的转化说明:1.当表和表之间的关系为1---1时,转化为独立模式,也可与任意一端对应得关系模式合并2.当表和表的关系为1----n时可将将单端转化为独立模式,而后与n端所对应的融合3.m:n多对多,每个表转化为一个关系模式,同时将两个表之间的关系建成一个表数据库的多表查询1.笛卡尔积:产生条件;查询条件没有,或查询条件无效多表之间的连接关系1.常见连接:
2、Equijion--等值连接Non-Equijion--非等值连接Outer-join外连接[外连接符号;1.外连接符号'(+)',其中符号在那边,另一边附加不符合条件的记录((+)符号在那边,那边加空格)2.如果有多个条件谓词,则每个条件谓词都必须带有外连接符3.如果一个表使用了外连接符作为条件,那么每个都必须有该表参与,并且使用使用外连接符号4.一个连接谓词只允许使用在条件谓词的一边,不能两端同时具有否则抛异常注意:如果要实现全外连接,可以考虑使用“合并查询”]sel-jion自连接--SQ
3、L92标准--------SQL92标准的链接---------------/*CrossjoinsNaturaljoinsUsingclauseFullortwosidedouterjoinsArbitraryjoinconditionsforouterjoins*/*/--常见查询--等值连接--[查询每个员工所对应的部门信息]selecte.*,d.dname,d.locfromempe,deptdwheree.deptno=d.deptno;--2不等值连接[不等连接阐述的是一种范围关系
4、,即就是两个表中没有直接联系]--输出员工的薪资等级selecte.ename,e.job,e.sal,s.gradegradefromempe,salgradeswheree.salbetweens.losalands.hisal;--3自连接【当需要跨取数据是进行自连接】--输出每个员工的信息及其管理者的姓名selecte.*,e1.enamemargenNamefromempe,empe1wheree.empno=e1.mgr;--外连接【显示除了符合条件的记录之外,还显示不符合条件的记录
5、】/*外连接符号;1.外连接符号'(+)',其中符号在那边,另一边附加不符合条件的记录((+)符号在那边,那边加空格)2.如果有多个条件谓词,则每个条件谓词都必须带有外连接符3.如果一个表使用了外连接符作为条件,那么每个都必须有该表参与,并且使用使用外连接符号4.一个连接谓词只允许使用在条件谓词的一边,不能两端同时具有否则抛异常注意:如果要实现全外连接,可以考虑使用“合并查询”*/--1,显示所有部门的信息,并显示部门10的人员信息selecte.empno,e.deptnoedeptno,d.
6、dname,d.deptnofromempe,deptdwheree.deptno(+)=d.deptnoande.deptno(+)=10;--2.显示所有人员的信息,并对应20号部门的信息selecte.ename,e.deptnoeno,d.deptnodno,d.dnamefromempe,deptdwheree.deptno=d.deptno(+)andd.dname(+)='RESEARCH';--3显示所有人,所有部门,以及对应20号部门的人员信息/*抛出异常:同时具有了外连接符号
7、selecte.*,d.*fromempe,deptdwheree.deptno(+)=d.deptno(+)andd.dname(+)='RESEARCH'*/--合并集查询【机就是将两个查询的结果集合并】--关键字union注意合并时必须为同结构【列个数,和相对应的集合类型都相同】的结构集--显示工作名为‘Manager,或工资在2500之上的员工信息selecte.*fromempewherejob='MANAGER'unionselecte1.*fromempe1wheree1.sal>
8、=2500;selecte.*fromempewheree.job='MANAGER'ore.sal>2500;--SQL92标准--------SQL92标准的链接---------------/*CrossjoinsNaturaljoinsUsingclauseFullortwosidedouterjoinsArbitraryjoinconditionsforouterjoins*/--Crossjions[笛卡尔积]selecte.*,d.*fromempecrossjoindeptd;s