SQL Server刷题(1)
填空题
1、DBMS的中文意思是 数据库管理系统
2、数据管理经历了人工管理阶段;文件系统阶段;数据库系统阶段 三个发展阶段。
3、数据库管理系统的数据模型包括:层次模型、网状模型、关系模型 和面向对象模型。
4、关系代数中专门的关系运算包括:选择、投影和连接
5、SQL语言提供数据定义、数据操纵 、数据控制等功能。
6、假设一个班只有一个班长,实体关系中学生和班长之间的联系是 多对1 。
数据查询
设有一个SPJ数据库,包括S,P,J,SPJ四个关系模式:
S( SNO,SNAME,STATUS,CITY);
P(PNO,PNAME,COLOR,WEIGHT);
J(JNO,JNAME,JCITY);
SPJ(SNO,PNO,JNO,QTY);
其中,供应商表S由供应商代码(SNO)、供应商姓名(SNAME)、供应商状态(STATUS)、供应商所在城市(CITY)组成;
零件表P由零件代码(PNO)、零件名(PNAME)、颜色(COLOR)、重量(WEIGHT)组成;
工程项目表J由工程项目代码(JNO)、工程项目名(JNAME)、工程项目所在城市(JCITY)组成;
供应情况表SPJ由供应商代码(SNO)、零件代码(PNO)、工程项目代码(JNO)、供应数量(QTY)组成,表示某供应商供应某种零件给某工程项目的数量为QTY。
1、使用关系代数表达式完成以下查询操作:
(1)求西安所有的供应商代码SNO和供应商姓名SNAME。
πSno,Sname(σCITY='西安'(S))
(2)求没有使用西安供应商生产的蓝色零件的工程号JNO。
πJNO (J)-πJNO(σcity='西安'∧Color='蓝色'(S∞SPJ∞P)
2.使用SQL语句完成以下操作:
(1)找出西安供应商的供应商代码和名字,并按照供应商代码降序排列。
SELECT sno,sname
FROM S
WHERE city='西安'
ORDER BY sno desc;
(2)求出供应商S1供应给工程J3的所有零件的总数量
SELECT sum(QTY)
FROM SPJ
WHERE sno='s1' and jno='j3';
(3)找出上海厂商供应的所有零件号码和零件名称
SELECT pno,p.name
FROM spj,p ,s
WHERE city='上海' and p.pno=spj.pno and s.sno=spj.sno;
(4) 统计各个供应商供应的零件总数
SELECT sno,SUM (qty)
FROM spj
GROUP BY sno;
(5)由S1供给J2的零件P3改为由S6供应
UPDATE spj SET sno=”S6”
WHERE sno='S1' AND jno='J2' AND pno='P3';
(6) 查询总供应量在1000以上的供应商编号和总供应数量。
SELECT sno, SUM(qty)
FROM spj
GROUP BY sno
HAVING SUM(qty)>1000;
问答题
数据库系统的三级模式结构是什么?为什么要采用这样的结构?
答:1)从数据库管理系统内部系统结构看,数据库系统通常采用三级模式结构。数据库系统三级模式结构是指外模式、模式和内模式。
(1)外模式:也称为子模式和或用户模式,是三级模式的最外层,它是数据库用户能够看到和使用到的局部数据的逻辑结构和特征描述。
(2)内模式:也称为存储模式,是数据物理结构和存储方式的描述,是数据在数据库内部的表示方式。
(3)模式:又称为概念模式或逻辑模式,是数据库中全体数据的逻辑结构和特征的描述,是所有用户的公共数据视图,是数据视图的全部。
数据库管理系统在这三级模式之间提供了两极映象,外模式/模式映象,模式/内模式映象,这种结构能较好地保证数据库系统的数据具有较高的逻辑独立性和物理独立性。