sql server 数据库表与视图的基本操作_第1页
sql server 数据库表与视图的基本操作_第2页
sql server 数据库表与视图的基本操作_第3页
sql server 数据库表与视图的基本操作_第4页
sql server 数据库表与视图的基本操作_第5页
已阅读5页,还剩1页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、 请用 ALPHA 语言完成 第 2 章课后习题 10(1)-(14) (1) 检索学生的所有情况。 GET W(S) GET W(S,SC,C): S.SNO=SC.SNO SC.CNO =C.CNO (2) 检索学生年龄大于等于 20 岁的学生姓名。 GET W(S.SN): (S.AGE=20) (3) 检索先修课号为 C2 的课程号。 GET W(C.CNO): (C.CPNO=C2) (4) 检索选修了课程号 C1成绩为 A的所有学生姓名。 RANGE SC SCX GET W(S.SN): SCX (SCX.SNO=S.SNO SCX.CNO=C1 SCX.SCORE=A) (5) 检索学号为 S1的学生修读的所有课程名及先修课号。 RANGE SC SCX GET W(C.CN,C.CPNO): SCX (SCX.CNO=C.CNO SCX.SNO=S1 ) (6) 检索年龄为 23岁的学生所修读的课程名。 RANGE S SX SC SCX GET W(C.CN): SX SCX (SX.SNO=SCX.SNO SCX.CNO=C.CNO SX.AGE=23) (7) 检索至少修读了学号为 S5的学生修读的一门课的学生的姓名。 RANGE SC SCX SC SCY GET W(S.SN): SCX SCY (SCX.SNO=S5 SCY.SNO=S.SNO SCY.CNO=SCX.CNO) 或 RANGE C CX SC SCX SC SCY GET W(S.SN): CX( SCX (SCX.SNO=S5 CX.CNO=SCX.CNO)- SCY (SCY.SNO=S.SNO CX.CNO=SCY.CNO) (8) 检索修读了学号为 S4的学生所修读的所有课程的学生的姓名。 RANGE C CX SC SCX SC SCY GET W(S.SN): CX( SCX (SCX.SNO=S4 CX.CNO=SCX.CNO)- SCY (SCY.SNO=S.SNO CX.CNO=SCY.CNO) 也可以变换( A - B A B X(A) X( A )) 真值表 A B A - B A B T T T T T F F F F T T T F F T T 也可以变换 RANGE C CX SC SCX SC SCY GET W(S.SN): CX( SCX (SCX.SNO=S4 CX.CNO=SCX.CNO)- SCY (SCY.SNO=S.SNO CX.CNO=SCY.CNO) GET W(S.SN): CX( SCX (SCX.SNO=S4 CX.CNO=SCX.CNO)( SCY (SCY.SNO=S.SNO CX.CNO=SCY.CNO) GET W(S.SN): CX( SCX (SCX.SNO=S4 CX.CNO=SCX.CNO)( SCY (SCY.SNO=S.SNO CX.CNO=SCY.CNO) GET W(S.SN): CX( SCX (SCX.SNO=S4 CX.CNO=SCX.CNO) ( SCY (SCY.SNO=S.SNO CX.CNO=SCY.CNO) (9) 检索选修所有课程的学生的学号。 RANGE C CX SC SCX GET W(S.SNO): CX SCX (SCX.CNO=CX.CNO S.SNO=SCX.SNO) 全称改存在为: RANGE C CX SC SCX GET W(S.SNO): CX( SCX (SCX.CNO=CX.CNO S.SNO=SCX.SNO) (10) 检索不选修任何课程的学生的学号。 RANGE SC SCX GET W(S.SNO): SCX((SCX.SNO=SNO)) 即: RANGE SC SCX GET W(S.SNO): SCX(SCX.SNOSNO) 或 全称改存在为: GET W(S.SNO): SCX((SCX.SNO=SNO)) ) 即: GET W(S.SNO): SCX(SCX.SNO=SNO)) 或 (你们的做法) RANGE SC SCX C CX GET W(S.SNO): CX( SCX(SCX.SNO=SNOCX.CNO=SCX.CNO)) 即: RANGE SC SCX GET W(S.SNO): CX SCX (SCX.SNOSNO SCX.CNOCX.CNO) 全称改存在为: RANGE SC SCX C CX GET W(S.SNO): CX( SCX(SCX.SNO=SNOCX.CNO=SCX.CNO)) GET W(S.SNO): CX(( SCX(SCX.SNO=SNOCX.CNO=SCX.CNO))) GET W(S.SNO): CX( SCX(SCX.SNO=SNOCX.CNO=SCX.CNO) ) (11) 在关系 C 中增添一门新课 MOVE C9 TO W.CNO MOVE 计算机系统结构 TO W.CN MOVE C4 TO W.CPNO PUT W(C) (12) 学号为 S17 的学生因故退学请在 S 与 SC 中将其除名。 Hold W(SC):SNO=S17 DELETE W Hold W(S):SNO=S17 DELETE W (13) 将关系 S 中学生 S6 的年龄改为 22 岁(只需 ALPHA 操作)。 Hold W(S.SNO,S.AGE):SNO=S6 MOVE 22 TO W.AGE UPDATE W (14) 将关系 S 中学生的年龄均增加 1 岁(只需 ALPHA 操作)。 Hold W(S.SNO,S.AGE) MOVE W.AGE+1 TO W.AGE UPDATE W 2、 下述作业 2、3、4 要求上机验证正确性 2、请用 SQL 语言分别写出第 2 章课后习题 10 下列查询: (1) 检索学生的所有情况。 SELECT * FROM S (2) 检索学生年龄大于等于 20 岁的学生姓名。 SELECT SN FROM S WHERE S.AGE=20 (3) 检索先修课号为 C2 的课程号。 SELECT CNO FROM C WHERE C.CPNO=C2 3、第 3章书后习题 5、设有四个关系(只示意性给出一条记录): S SPJ SNO SNAME ADDRESS TEL SNO PNO JNO QTY Sl SN1 上海南京路 68564345 S1 Pl J1 200 P J PNO PNAME SPEC CITY COLOR JNO JNAME LEADER BG P1 PNl 8X8 无锡 红 J1 JN1 王总 10 S(SNO,SNAME, ADDRESS,TEL)其中,SNO:供应商代码 SNAME:姓名 ADDRESS:地 址 TEL:电话; J(JNO,JNAME,LEADER,BG)其中,JNO:工程代码 JNAME:工程名 LEADER:负责人 BG:预算; P(PNO,PNAME,SPEC,CITY,COLOR)其中,PNO:零件代码 PNAME:零件名 SPEC: 规格 CITY:产地 COLOR:颜色; SPJ(SNO,JNO,PNO,QTY)其中,SNO:供应商代码 JNO:工程代码 PNO:零件代码 QTY:数量; 解:为每个关系建立相应的表结构,添加若干记录。 (1) CREATE TABLE S(SNO VARCHAR(5) NOT NULL PRIMARY KEY, SNAME VARCHAR(20) NOT NULL, ADDRESS NVARCHAR(30), TEL VARCHAR(20) INSERT INTO S VALUES(S1,SN1, 上海南京路,68564345) CREATE TABLE P(PNO VARCHAR(5) NOT NULL PRIMARY KEY, PNAME VARCHAR(20) NOT NULL, SPEC VARCHAR(20), CITY NVARCHAR(20); COLOR NVARCHAR(2) INSERT INTO P VALUES(P1,PN1,8x8,无锡, 红) CREATE TABLE J(JNO VARCHAR(5) NOT NULL PRIMARY KEY, JNAME VARCHAR(20) NOT NULL, LEADER VARCHAR(10), BG INT) INSERT INTO J VALUES(J1,JN1,王总,10) CREATE TABLE SPJ(SNO VARCHAR(5) NOT NULL, PNO VARCHAR(5) NOT NULL, JNO VARCHAR(5) NOT NULL, QTY INT, CONSTRAINT PR_SPJ PRIMARY KEY(SNO,SPNO,JNO) INSERT INTO SPJ VALUES(S1,P1,J1,200) (2) 1)找出所有供应商的姓名和地址、电话。 SELECT SNAME,ADDRESS,TEL FROM S 2)找出所有零件的名称、规格、产地。 SELECT PNAME,SPEC,CITY FROM P 3)找出使用供应商代码为 S1供应零件的工程号。 SELECT DISTINCT JNO FROM SPJ WHERE SNO=S1 5)找出产地为上海的所有零件代码和规格。 SELECT PNO,SPEC FROM P WHERE CITY=上海 9)取出为工程 J1和 J2提供零件的供应商代号。 SELECT distinct SNO FROM SPJ WHERE JNO=J1 OR JNO=J2 4、第 3章书后习题第 9题对于简易教学管理数据库有如下 3个基本表: S(SNO,SN,AGE,SEX)、SC(SNO,CNO,SCORE)、C(CNO,CN,TH),其含义为 SNO(学号),SN(姓 名),AGE(年龄),SEX(性别),SCORE(成绩),CNO(课程号),CN(课程名),TH(教师名)。试用 SQL语言表达如下查询及操作: (1)检索年龄大于 16岁的女学生的学号和姓名。 SELECT SNO,SN FROM S WHERE AGE16 AND SEX=女; 实验书实验 4 1、基于“教学管理”数据库 JXGL,试用 SQL的查询语句表达下列查询: (1)检索年龄大于 23岁的男学生的学号和姓名。 Select sno,sname From Student Where Sage23 And Ssex=男 2、基于“教学管理”数据库 JXGL,试用 SQL的查询语句表达下列查询: (6)检索姓名以王打头的所有学生的姓名和年龄。 Select sname,sage From student Where sname like 王% (7)在 SC中检索成绩为空值的学生学号和课程号。 Select sno,cno From sc Where grade is null 3、设有表 4-1表 4-4的 4个基本表 STUDENT(SNO,SNAME,SEX,AGE,CLASS) SC(SNO,CNO,GRADE) TEACHER(TNO,TNAME,SEX,AGE,PROF,DEPA) COURSE(CNO,CNAME,TNO) (1)查询选修课程“8105”且成绩在 80到 90之间的所有记录 Select * From SC Where CNO =8105 And GRADE Between 80 And 90 或者

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论