软题库 学习课程
当前位置:信管网 >> 在线考试中心 >> 试题查看
试题题型【分析简答题】
试题内容

阅读下列说明,回答问题1至问题3,将解答填入答题纸的对应栏内。
【说明】
某大型集团公司的数据库的部分关系模式如下:
员工表:EMP(Eno,Ename,Age,Sex,Title),各属性分别表示员工工号、姓名、年龄、性别和职称级别,其中性别取值为“男”“女”;
公司表:COMPANY(Cno,Cname,City),各属性分别表示公司编号、名称和所在城市;
工作表:WORKS(Eno,Cno,Salary),各属性分别表示职工工号、工作的公司编号和工资。
有关关系模式的属性及相关说明如下:
(1)允许一个员工在多家公司工作,使用身份证号作为工号值。
(2)工资不能低于1500元。
根据以上描述,回答下列问题:
【问题1】(4分)
请将下面创建工作关系的SQL语句的空缺部分补充完整,要求指定关系的主码、外码,以及工资不能低于1500元的约束。
CREATE TABLE WORKS(
Eno CHAR(10)    (a)  ,
Cno CHAR(4)    (b)  ,
Salary int    (c)  ,
PRIMARY KEY    (d)  ,
);
【问题2】(6分)
(1)创建女员工信息的视图FemaleEMP,属性有Eno、Ename、Cno、Cname和Salary,请将下面SQL语句的空缺部分补充完整。
CREATE    (e)
AS
SELECT EMP.Eno,Ename,COMPANY.Cno,Cname,Salary
FROM   EMP, COMPANY, WORKS
WHERE    (f)  ;
(2)员工的工资由职称级别的修改自动调整,需要用触发器来实现员工工资的自动维护,函数float Salary_value(char(10) Eno)依据员工号计算员工新的工资。请将下面SQL语句的空缺部分补充完整。
CREATE   (g)   Salary_TRG AFTER   (h)   ON EMP
REFERENCING new row AS nrow
FOR EACH ROW
BEGIN
UPDATE WORKS
SET   (i)
WHERE   (j)  ;
END
【问题3】(5分)
请将下面SQL语句的空缺部分补充完整。
(1)查询员工最多的公司编号和公司名称。
SELECT j COMPANY.Cno,Cname
FROM COMPANY,WORKS
WHERE COMPANY.Cno= WORKS.Cno
GROUP BY   (k)
HAVING   (l)   ( SELECT  COUNT(*)
FROM  WORKS
GROUP BY Cno
);
(2)查询所有不在“中国银行北京分行”工作的员工工号和姓名。
SELECT Eno,Ename
FROM EMP
WHERE Eno   (m)   (
SELECT  Eno
FROM   (n)
WHERE  (o)
AND  Cname=‘中国银行北京分行’
);

查看答案

相关试题