期末了,复习一波

真不知道为什么中国的cs教育搞得跟文科一样。。。

 

 

数据库期末复习习题

一、选择题

  1. 数据管理技术的发展过程中,经历了人工管理阶段、文件系统阶段和数据库系统阶段,在这三个阶段中,数据独立性最高的是( C  )阶段。

(A)人工管理     (B)文件系统     (C)数据库系统    

  1. 候选码中的属性可以有(  C )。

(A)0个    (B)1个     (C)1个或多个   (D)多个

(当一个关系有N个属性或属性组可以唯一标识时,则说明该关系有N个候选码,可以选定其中一个作为主码。)

  1. 现实世界“特征”术语,对应于数据世界的(  A  )。

(A)属性    (B)联系     (C)记录   (D)数据项  

  1. 下面关于关系性质的叙述中,不正确的是(  D  )。

(A)关系中行的次序不重要    (B)关系中列的次序不重要    

(C)关系中元组不可以重复    (D)关系中列不可以取空值

  1. 若有语句SNO INT NOT NULL UNIQUE,下面描述不正确的是(  B  )。

(A)每个SNO必须是唯一的 (B)SNO是主码  (C)SNO不能为空 (D)SNO取值整数

  1. 在SELECT语句中的WHERE子句的条件表达式中,可以匹配0个到多个字符的通配符是(  B  )。

(A)*        (B)%        (C)_       (D)[]

  1. 在SQL SERVER中声明局部变量时,变量名前面的字符为(  A  )。

(A)@     (B)@@        (C)#      (D)*

  1. 关于EXISTS谓词的使用,错误的是( C   )。

(A)EXISTS谓词返回的结果是TRUE或FALSE  

(B)由EXISTS引出的子查询,SELECT语句一般不写具体的属性列,而使用*

(C)EXISTS既可以用在相关子查询中,又可以用在不相关子查询中   

(D)NOT EXISTS与EXISTS返回的结果相反

(非相关子查询的执行不依赖与外部的查询。

相关子查询的执行依赖于外部查询。多数情况下是子查询的WHERE子句中引用了外部查询的表。

非相关子查询是独立于外部查询的子查询,子查询总共执行一次,执行完毕后将值传递给外部查询。
相关子查询的执行依赖于外部查询的数据,外部查询执行一行,子查询就执行一次。
故非相关子查询比相关子查询效率高。)

  1. 在视图上不能完成的操作是(  D  )。

(A)更新视图   (B)查询    (C)在视图上定义新视图  (D)在视图上定义新的基本表

  1. 下列聚合函数用法正确的是(  B  )。

(A)SUM(*)    (B)COUNT(*)   (C)MAX(*)    (D)AVG(*)

  1. 在关系数据库设计中,设计关系模式是(   C   )的任务。

(A)需求分析阶段   (B)概念设计阶段   (C)逻辑设计阶段  (D)物理设计阶段

  1. SQL语言是(  C  )语言。

(A)层次数据库    (B)网状数据库    (C)关系数据库  

  1. 如果对关系emp(eno,ename,salary)成功执行下面的SQL语句,其结果是( A )

CREATE  CLUSTER  INDEX  name_index  ON  emp(salary)

(A)在emp表上按salary升序创建了一个聚簇索引   

(B)在emp表上按salary降序创建了一个聚簇索引    

(C)在emp表上按salary升序创建了一个唯一索引

(D)在emp表上按salary降序创建了一个唯一索引

(主键一定是唯一性索引。

但是一张表中可以有多个唯一索引,所以唯一索引不一定是主键。)

  1. 关于触发器叙述错误的是( B   )。

(A)触发器是不需要调用的,当触发事件发生时它就会被激活   

(B)触发器不可以同步数据库的相关表进行级联更改   

(C)触发器是一类特殊的存储过程 

(D)触发器能作用在数据库、服务器及表上。

  1. 定义一个存储过程查询学生某门课程的成绩和学分,存储过程的首部如下形式:

CREATE PROCEDURE student_info @name char(8),@kc_name char(16)。其中形参@name表示学生姓名,@kc_name表示课程名,则下列执行方式中,正确的是(       D )。

(A)EXECUTE student_info(\’李明\’, \’数据库原理\’ )

(B)EXEC  student_info  \’数据库原理\’,\’李明\’

(C)EXEC  student_info  李明,数据库原理

(D)EXECUTE  student_info   \’李明\’, \’数据库原理\’

  1. 有两个关系模式,分别为职工(职工号,职工名,部门号,职务,工资)、设备(设备号,职工号,设备名,数量),其中职工号、设备号分别是职工关系和设备关系的主键,且设备关系的职工号的取值来自职工关系的职工号,则两个关系的属性中,哪个是外键(  C )。

(A)职工关系的职工号    (B)职工关系的设备号   

(C)设备关系的职工号    (D)设备关系的设备号 

  1. 对视图的描述错误的是( C  )。

(A)是一张虚拟的表

(B)在存储视图时存储的是视图的定义

(C)在存储视图时存储的是视图中的数据

(D)可以像查询表一样来查询视图

  1. 已知成绩表如表1所示,执行SQL语句:                 表1 成绩表

学号

课程号

分数

S1

C1

80

S1

C2

75

S2

C1

N      NULL

S2

C2

55

S3

C3

90

SELECT COUNT(DISTINCT 学号)

FROM 成绩

WHERE 分数>70

查询结果显示的内容是( B  )。

(A)1    (B)2     (C)3   (D)4

                                            

  1. 用于事务回滚的SQL语句是(  D  )。

(A)CREATE TABLE (B)COMMIT  (C)CREATE VIEW (D)ROLLBACK

如果 @@TRANCOUNT 大于 1,则 COMMIT TRANSACTION使 @@TRANCOUNT 按 1 递减并且事务将保持活动状态zhi。

如果 @@TRANCOUNT 为 1,COMMIT TRANSACTION 使得dao自从事务开zhuan始以来所执行的所有数据修改成为数据库的永久部分,释放事务所占用的资源,并将 @@TRANCOUNT 减少到 0。

使用COMMIT提交当前事务,使事务中执行的变更永久化,所有事务的更改都将为其他事务可见,而且保证当崩溃发生时的可持续性;

可以使用此语句终止SET TRANSACTION语句的只读事务;

可以使用此语句手动提交疑问在分布式的事务上;

通过修改的表,查看事务期间所作的任何更改,但其他用户不能看到所做的更改。

 

 

 

 )

  1. 若有语句ORDER BY 总分 DESC,英语DESC,该语句表示的意思是(  C  )。

(A)总分和英语分数都是最高的在前面    

(B)总分和英语分数之和最高的在前面   

(C)总分高的在前面,总分相同时英语分数高的在前面

(D)总分和英语分数之和最高的在前面,相同时英语分数高的在前面

  1. 如果要在员工工资表中限制工资的输入范围,应使用(  D  )约束。

(A)PRIMARY KEY   (B)FOREIGN KEY    (C)UNIQUE    (D)CHECK

  1. SQL的聚集函数COUNT、SUM、AVG等函数不允许出现在查询语句的(    D   )子句中。

(A)SELECT  (B)HAVING    (C)ORDER BY     (D)WHERE

  1. 数据的( D  )是指保护数据库,防止未经授权或不合法的使用造成的数据泄漏、非法更改或破坏。

(A)完整性     (B)备份     (C)恢复     (D)安全性

  1. 数据库管理系统能实现对数据库中数据的查询、插入、修改和删除,这类操作是由T-SQL 中哪类语言完成(   B  )。

(A)数据定义语言    (B)数据操纵语言    (C)数据控制语言

  1. 语句DELETE FROM sc表明(  A  )。

(A)删除sc中的全部记录(元组)          (B)在删除基本表sc

(C)删除基本表sc中的列数据      (D)删除基本表sc中的部分行

可以在不删除表的情况下删除所有的行。这意味着表的结构、属性和索引都是完整的:

DELETE FROM table_name

或者:

DELETE * FROM table_name
  1. 若属性A是关系R的主键(码),则属性A不能取空值(NULL),这是满足( A  )。

(A)实体完整性规则(B)参照完整性规则(C)用户定义完整性规则(D)域完整性规则

实体完整性:
实体完整性要求每一个表中的主键字段都不能为空或者重复的值。

参照完整性:
若属性(或属性组)F是基本关系R的外码,它与基本关系S的主码Ks相对应,则对于R中每个元组在F上的值必须为:或者为空(F中每个属性均为空),或者等于S中某个元组的主码值。 其实这个概念很模糊,其实说简单点,比如在学生选课关系中,学号是学生表主键,课号是课程表主键,学号和课号联合做选课表的主键,这都是实体完整性约束。 而选课表中,单独一个学号是外键、参照学生表学号,单独一个课号是外键,参照课程表课号,这都是参照完整性约束,比如课号的值只有1,但是你在选课表里取课号为1以外的值,就会出错,违反了参照完整性。

用户定义完整性:

指根据应用环境的要求和实际的需要,对某一具体应用所涉及的数据提出约束性条件。这一约束机制一般不应由应用程序提供,而应有由关系模型提供定义并检验,主要包括字段有效性约束和记录有效性。

域(列)完整性:
域完整性是对数据表中字段属性的约束,通常指数据的有效性,它包括字段的值域、字段的类型及字段的有效规则等约束,它是由确定关系结构时所定义的字段的属性决定的。限制数据类型,缺省值,规则,约束,是否可以为空,域完整性可以确保不会输入无效的值.。

  1. SQL SERVER提供的单行注释语句是使用(  B  )开始的一行内容。

(A)/*       (B)–        (C){       (D)/

  1. 下列关于关系数据模型的术语中,(  D  )术语所表达的概念与二维表中的“行”的概念最接近。

(A)属性    (B)域    (C)关系    (D)元组

  1. 对于下列语句,正确的描述是( B   )。

ALTER  TABLE  Product

ADD  Year  DATE  DEFAULT‘1985-01-01’

(A)向Product表中增加一个名为“DATE”的列   

(B)该列有一个默认值是“1985-01-01” 

(C)该列的数据类型是字符型

(D)该属性指定为主码

  1. 从E-R模型向关系模式转换时,一个M:N联系转换成关系模式时,一般该关系模式的主码是(  C  )。

(A)M端实体的主码                       

(B)N端实体的主码   

(C)M端实体的主码与N端实体的主码组合

(D)重新选取其他关键字  

  1. 假定学生关系是S(学号,姓名,性别,年龄),课程关系是C(课程号,课程名,授课老师),学生选课关系是SC(学号,课程号,成绩),要查找选修“数据库”课程的“男”学生的姓名,将涉及到哪几个关系(  D  )。

(A)S    (B)SC、C     (C)S、SC   (D)S、SC、C

  1. SELECT语句执行的结果是(  C  )。

(A)数据项    (B)元组    (C)表     (D)数据库

  1. 列值为空值(NULL),则说明这一列(  A  )。

(A)数值是未知的  (B)数值为0  (C) 数值为空格    (D)不存在

  1. 在SQL SERVER中全局变量前面的字符为(  B  )。

(A)@     (B)@@        (C)#      (D)*

  1. 若有语句table_1 RIGHT JOIN table_2 ON 连接条件,这种连接会生成哪种结果集( B )。

(A)包括table_1中的所有行,不包括table_2的不匹配行

(B)包括table_2中的所有行,不包括table_1的不匹配行

(C)包括两个表的所有行

(D)只包括table_1和table_2满足条件的行

  1. 用下面的T-SQL语句建立一个基本表:

  CREATE TABLE Student(Sno CHAR(4) PRIMARY KEY,

   Sname CHAR(8) NOT NULL,

     Sex char(2),

    Age INT)

可以插入到表中的元组是( D   )。

(A)’5021’,’张三’,男,21          (B)NULL,’张三’,NULL,21

(C)’5021’,NULL,’男’,21          (D)’5021’,’张三’,NULL,NULL

  1. 在DB应用中,一般一条SQL语句可产生或处理一组记录,而DB可通过( B   )技术实现一次只能处理一条记录。

(A)指针         (B)游标         (C)数组          (D)栈

  1. 在表或视图上执行除了(  D  )以外的语句都可以激活触发器。

(A)INSERT     (B)DELETE    (C)UPDATE    (D)SELECT

  1. 某查询语句中有“%晓_”语句,则不可能的查询结果有( A  )。

(A)张某晓     (B)晓某    (C)刘晓某    (D)刘李晓某

  1. 下列哪条SQL语句表示将计算列sal*12生成别名Annual Salary(  A  )。

(A)SELECT sal*12 \’Annual Salary\’ FROM emp   

(B)SELECT sal*12 “Annual Salary” FROM emp 

(C)SELECT sal*12 AS Annual Salary FROM emp  

(D)SELECT sal*12 , \’Annual Salary\’ FROM emp

二、判断题

  1. 使用INSERT命令一次只能插入一行数据。(  x  )
  2. 由于索引是独立的,删除表时,与该表相关的索引并不被删除。(  x  )
  3. DELETE * FROM  sc语句语法正确,表示删除sc表中的所有记录。(  x  )
  4. 日志文件用于存放恢复数据库中用的所有日志信息、每个数据库至少拥有一个日志文件,也可以拥有多个日志文件,扩展名为ldf。(  √  )
  5. 在SELECT语句中,当使用ORDER BY子句时,一定要使用GROUP BY 子句。(   x   )
  6. E-R模型中,联系可以与1个或多个实体有关。(  √  )
  7. 同一关系模型的任意两个元组值不能全同。(  √  )
  8. 数据库中只存放视图的定义。(  √  )
  9. SQL语言中,SELECT语句中的FROM子句指的是查询的条件。(  x  )
  10. 使用索引可以加快查询语句的执行速度,使用视图可以简化查询语句的编写’。(  √  )
  11. 关系的任何属性不可再分。(  x  )
  12. 在SQL语言中,“>any”等价于“>max”。(  x  )(如果子查询返回的结果为空时,all  与max 的写法不等价,否则等价)
  13. SQL语言是关系数据库语言。(  √  )
  14. 事务的原子性是指事务中包括的所有操作要么都做,要么都不做。(  √  )
  15. 在CREATE INDEX语句中,使用CLUSTERED来建立簇索引。(  x  )
  16. 设关系R和S的元组个数分别为100和300,若关系T是R和S的笛卡尔积,则关系T的元组个数为400。(  x  )(100*300)
  17. 数据库系统的三级模式结构包括:内模式、模式和外模式。(   √   )
  18. 等值连接与自然连接是相同的。(  x  )
  19. 把E-R模型转换成关系模型的过程,属于数据库的概念结构设计。(  x  )(逻辑结构设计)

三、填空题

  1. 实体间的联系通常可以分为一对一、      一对多           多对多       
  2. 打开SQL SERVER后,当前默认的数据库为   Master       ,若需使student数据库成为当前数据库,可以使用语句         USE student            
  3. 构成E-R图的三个基本要素为     实体       、属性、    联系        
  4. 如果两个实体之间具有M:N联系,则将它们转换为关系模型的结果是   3   个表。
  5. 在 SQL SERVER的事务处理中,开启一个事务可用BEGIN TRANSACTION,提交事务和撤销事务应使用  COMMIT TRAN      和ROLLBACK TRAN       
  6. 游标处理步骤包括:   声明游标         打开游标     读取数据   、关闭游标、删除游标 。
  7. 指出下列缩写的含义:DBMS  数据库管理系统  、DBA      数据库管理员           
  8. SELECT语句进行查询,若希望查询的结果不出现重复元组,应在SELECT子句中使用     DISTINCT       保留字。
  9. 将数据库从SQL SERVER实例中删除,即在逻辑上将数据文件和日志文件与服务器相脱离,但文件并不从磁盘上删除,此操作称为数据库分离,可通过    附加     将其重新加载到SQL SERVER实例中。
  10. “向EMP表增加一个Telephone列,其数据类型为长度为10的字符串”的SQL语句是:ALTER TABLE EMP       ADD Telephone char(10)                
  11. SQL语言的数据操纵语句包括SELECT、INSERT、UPDATE和DELETE,最重要的也是使用最频繁的语句是     select         
  12. SQL SERVER的数据库文件分为数据文件和     日志文件           ,其中数据文件又分为主数据文件和辅助数据文件。
  13. 在SQL SERVER中,按触发事件不同,触发器可分为     DDL 触发器 和   DML  触发器。
  14. 为了使通过视图插入新行时,元组满足视图定义的条件,在定义视图时必须加上                        

    WITH CHECK OPTION   子句。

四、简答题

  1. 某关系数据库有供应商关系S和零件关系P,如下图所示。它们的主码分别是“供应商号”和“零件号”。零件关系P的属性“供应商号”是它的外码,不支持级联删除更新;属性“颜色”只能取值为(红,白,蓝)。(14分)

 供应商关系S:                          

      

零件关系P:     

 

 

 

 

请完成以下问题:

 

 

(1)     若向关系P插入新行(‘201’,‘白’,‘S10’)、(‘301’,‘红’,‘T11’)、(‘301’,‘绿’,‘B01’),哪些记录不能插入?为什么?

(‘201’,‘白’,‘S10’)不能插入,主键不能重复

(‘301’,‘红’,‘T11’)不能插入,外键取值错误

(‘301’,‘绿’,‘B01’)不能插入,颜色取值错误

 

(2)     若删除关系S中的行,删除行的值分别为(‘S10’,‘宇宙’,‘上海’)、(‘Z01’,‘立新’,‘重庆’),哪些记录可以删除?为什么?

(‘S10’,‘宇宙’,‘上海’)不能删除,P表有对应的行

(‘Z01’,‘立新’,‘重庆’)可以删除

(3)     若要更新S表中的供应商号的值,将‘Z01’修改为‘Z30’,该更新操作是否可以被执行?为什么?

将‘Z01’修改为‘Z30’,可以更新,因为P表没有关联的行,不影响。

(4)     若要更新P表中的供应商号的值,将‘B01’修改为‘B02’,该更新操作是否可以被执行,为什么?

‘B01’修改为‘B02’不可以更新,因为S表没有相应的值对应

 

  1. 有如图1所示的关系R,请分析R的主键是什么并说明原因?

 

 

 

R的主键选择(工程号,材料号) 

原因:可以唯一确定一行记录

 

  1. 声明一个长度为16的字符型变量,变量名为cname,并赋初值为“数据库原理与应用”。请按要求写出相应的语句。

declare @cname char(16) 

Set @cname=’数据库原理与应用’或SELECT @cname=’数据库原理与应用’

 

  1. 假设存在名为AAA的数据库,包括S(SNO CHAR(8),SN VARCHAR(8),AGE INT,DEPT VARCHAR(20),DATET DATETIME)和SC(SNO CHAR(8),CN VARCHAR(10),GRADE NUMERIC(5,2))两张表。请设计一存储过程PROC3,利用存储过程可以修改SC表中学号为@s1、课程名为@c1的学生成绩,使其值为@g1。

CREATE PROC PROC3 @S1 CHAR(8),@c1 VARCHAR(10),@g1 NUMERIC(5,2)

AS

UPDATE SC

SET GRADE=@g1

WHERE SNO=@s1 AND CN=@c1

 

五、综合题

  1. 某企业集团有若干个仓库,每个仓库可以存放多种零件,每种零件可以存放在多个仓库中。仓库的属性有:仓库号、仓库名、面积、货位数;零件的属性有:零件号、零件名称、规格型号、计量单位、供货商号、价格;仓库存放零件有库存量。

(1)     根据上述语义画出E-R图。

(2)     将该E-R模型转换为关系模型。

(3)     说明每个关系模式的主码和外码。

 

 

 

 

实体的主要属性如下,其中下划线部分为主码:

仓库(仓库号,仓库名,面积,货位数)

零件(零件号,零件名称,规格型号,计量单位,供货商号,价格)

库存(  仓库号    零件号  ,库存量)

外码为库存关系中的仓库号、零件号

 

图书表 BOOK

列名

类型

主码

约束

中文列名

BNO

CHAR(10)

Y

不能为空

书号

BNAME

CHAR(20)

 

不能为空

书名

AUTHOR

CHAR(8)

 

 

作者

PRESS

CHAR(20)

 

 

出版社

PRICE

INUB(5,2)

 

不能为空

单价

PDATE

DATE

 

 

出版日期

 

 

 

 

 

 

经销商表 DEALER

列名

类型

主码

约束

中文列名

DNO

CHAR(10)

Y

 

经销商号

DNAME

CHAR(20)

 

 

经销商名

ADDRESS

CHAR(20)

 

 

地址

 

 

 

 

 

批发表 WHOLESAL

列名

类型

主码

约束

中文列名

BNO

CHAR(10)

Y

 

书号

DNO

CHAR(10)

Y

 

经销商号

QUANTITY

INT

 

 

数量

 

 

 

 

 

请在空白处补齐,完成的SQL语句的编写。(每空1分,共29分)

1、   创建图书表 (不带约束)

    

2、   修改图书表

1)       对经销商表添加一个”电话”字段(TELEPOLE ),类型为字符型,宽度为13位

2)       将图书表的书号设置为主码约束

3、   数据查询

1)       查询所有经销商。

(1)     SELECT * FROM DEALER

2)       查询姓”李”作者出版的图书名、作者名和出版时间。

 SELECT BNAME,AUTHOR,PDATE FROM BOOK WHERE AUTHOR LIKE ‘李%’                                 

3)       查询各经销商批发数量少于100的书号。

SELECT DISTINCT BNO FROM WHOLESAL WHERE QUANTITY<100

 

4)       统计”科学出版社” 出版的“数据库技术”这门书的总销售量。

SELECT COUNT(QUANTITY) FROM WHOLESAL,BOOK WHERE BOOK.BNO= WHOLESAL.BNO

AND BOOK.PRESS=’科学出版社’AND BOOK.BNAME= ’数据库技术’

 

修改批发销售表WHOLESALE,增加批发时间属性SDATE,数据类型为日期型,而且数据不能为空。

  ALTER TABLE WHOLESAL ADD SDATE DATE NOT NULL

采用嵌套方式查询“小林书局”这个经销商批发的图书名。

  SELECT BNAME FROM BOOK WHERE BNO IN

  (SELECT BNO  FROM  WHOLESAL  WHERE DNO IN

       (SELECT  DNO FROM DEALER WHERE DNAME= ‘小林书局’)

   )    

将图书表中书号为1001的图书删除。

  DELETE  FROM  BOOK  WHREE  BNO=’1001’    

5)       将价格在20元以下的图书价格统一调整为21.80元。

UPDATE  BOOK  SET  PRICE=21.8  WHERE  PRICE<20

(2)     创建存储过程,输入书名,输出价格。

创建:

CREATE PROC myproc @bname varchar(20),@price int output

As

SELECT @price=PRICE from BOOK where BNAME=@bname

调用:

DECLARE @price int

EXEC myproc ‘计算机应用’,@price output

(3)     创建触发器,当表BOOK插入操作时,显示\’trigger is working’。

create trigger mytrigger on mbook after insert

as

       declare @str char(50)

       set @str=\’trigger is working\’

       print @str

 

  1. 某高校要开运动会,请代为开发一个简单的高校运动会管理系统,已知以下实体及联系:

l  运动员基本信息(简称运动员),包括属性:运动员号,姓名,性别,队名。实体及其属性对应的英文名为:ATHLETE(ANO,ANAME,ASEX,ATEAM),其中运动员号为该实体的唯一标识码;

l  比赛项目基本信息(简称项目),包括属性:项目号,项目名,比赛时间,比赛场地。实体及其属性对应的英文名为ITEM(INO,INAME,ITIME,IPLACE),其中项目号为该实体的唯一标识码;

l  两个实体存在参赛联系,每个运动员可以参加多个项目,每个项目包括多个运动员参加。运动员参赛后产生成绩。参赛联系及成绩属性对应的英文名为GAMES(SCORE)。

按要求完成如下设计工作:

(1)     数据库设计

① 画出该系统的E-R模型图,包括实体、实体属性及实体之间的联系。

② 把E-R模型图转换成关系模型(包括实体及实体之间的联系对应的关系模型),并说明关系模型的主码、外码。

③ 用SQL语言建立关系模型对应的基本表,其中的类型及长度可以根据需要自行确定。

(2)     用SQL语句实现如下功能

① 若有待插入记录为:运动员编号“100801”、姓名“张三”、性别“男”、队名“游泳梦之队”,将此记录插入到运动员表中。

    INTO           VALUES            

② 利用分组查询参加比赛的男、女运动员人数

      ASEX,      FROM ATHLETE      

③ 查询“100801”运动员参加的所有项目号、项目名、比赛时间、比赛场地

SELECT      ,INAME,ITIME,IPLACE FROM      WHERE

        AND         =’100801’

④ 利用EXISTS查询参加了“10005”项目的所有运动员姓名及队名

⑤ 将“游泳梦之队”的队名改成“Swimming Team”

⑥ 创建名为ATHLETE_SCORE的视图(包括运动员号、姓名、队名、项目名、成绩)

 

(1)  1

① E-R模型

 

 

 

② 关系模型

ATHLETE(ANO,ANAME,ASEX,ATEAM)主码为ANO

ITEM(INO,INAME,ITIME,IPLACE)主码为INO

GAMES(ANO,INO, SCORE)主码为ANO和INO,外码为ANO,INO

③ 创建基本表

 

 

(2)       

① insert into ATHLETE values(‘100801’,’张三’,’男’,’游泳梦之队’)

② select Asex,COUNT(*) FROM ATHLETE GROUP BY ASEX

③ select item.ino,iname,itime,iplace from item,games where

Item.ino=games.ino and games.ano=’100801’

④ select ano,aname,ateAm from athlete where exists

(select * from games

Where games.ano=athlete.ano and ino=’10035’)

⑤ UPDATE ATHLETE SET ATEAM=’swimming team’ where ATEMA=’游泳梦之队’

⑥ CREATE VIEW ATHLETE_SCORE

   AS

   SELECT ATHLETE.ANO,ANAME,ATEAM,INAME,SCORE

   FROM ATHLETE,ITEM,GAMES

   WHERE ATHLETE.ANO=GAMES.ANO AND GAMES.INO=ITEM.INO          

版权声明:本文为xxxsans原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.cnblogs.com/xxxsans/p/14159128.html