(1 )有如下 2 个关系表Emp(eid ,ename,age,did,salary) ,其各列含义为:职工号,姓名,年龄,部门
(1 )有如下 2 个关系表
Emp(eid ,ename,age,did,salary) ,其各列含义为:职工号,姓名,年龄,部门号,工资
Dept(did ,dname,mgr_id) ,其各列含义为:部门号,部门名称,部门经理职工号
写出一条 SQL 语句,查询工资大于 10000 ,且与他所在部门的经理年龄相同的职工姓名 。 (6 分)
(1 )有如下 2 个关系表
Emp(eid ,ename,age,did,salary) ,其各列含义为:职工号,姓名,年龄,部门号,工资
Dept(did ,dname,mgr_id) ,其各列含义为:部门号,部门名称,部门经理职工号
写出一条 SQL 语句,查询工资大于 10000 ,且与他所在部门的经理年龄相同的职工姓名 。 (6 分)
设有职工关系Emp (Eno,Ename,Esex,EDno)和部门关系Dept (Dno,Dname, Daddr),创建这两个关系的SQL语句如下:
CREATE TABLE Emp (
Eno CHAR(4),
Ename CHAR(8),
Esex CHAR(1) CHECK(Esex IN ('M','F')),
EDno CHAR(4) REFERENCES Dept (Dno),
PRIMARY KEY (Eno)
);
CREATE TABLE Dept (
Dno CHAR(4) NOT NULL UNIQUE,
Dname CHAR(20),
Daddr CHAR(30)
);
直接运行该语句,DBMS会报错,原因是(53)。若经过修改,上述两个表创建完毕之后(尚无数据),则下述语句中能被执行的是(54)。
A.创建表Dept时没有指定主码
B.创建表Dept时没有指定外码
C.创建表Emp时,被参照表Dept尚未创建
D.表Emp的外码EDno与被参照表Dept的主码Dno不同名
● 设有职工关系Emp(Eno,Ename,Esex,EDno)和部门关系Dept(Dno,Dname,
Daddr),创建这两个关系的SQL语句如下:
CREATE TABLE Emp(
Eno CHAR(4),
Ename CHAR(8),
Esex CHAR(1) CHECK(Esex IN ('M', 'F')),
EDno CHAR(4) REFERENCES Dept(Dno),
PRIMARY KEY (Eno)
);
CREATE TABLE Dept(
Dno CHAR(4) NOT NULL UNIQUE,
Dname CHAR(20),
Daddr CHAR(30)
);
直接运行该语句,DBMS会报错,原因是: (53) 。若经过修改,上述两个表创建完毕之后(尚无数据),则下述语句中能被执行的是 (54) 。
(53)
A. 创建表Dept时没有指定主码
B. 创建表Dept时没有指定外码
C. 创建表Emp时,被参照表Dept尚未创建
D. 表Emp的外码EDno与被参照表Dept的主码Dno不同名
(54)
A. INSERT INTO Emp VALUES('e001', '王', 'M ', 'd1');
B. INSERT INTO Emp VALUES(NULL, '王', 'M', 'd1');
C. INSERT INTO Emp VALUES('e001', '王', 'M', NULL);
D. INSERT INTO Emp VALUES('e001', '王', 'X', 'd1');
设有如下两个关系,其中雇员信息表关系EMP的主键是雇员号,部门信息表关系DEPT的主键是部门号。
在雇员信息表EMP中,哪一个属性是外键?
A.雇员号
B.雇员名
C.部门号
D.工资
(21 )已知下列员工关系表 Employees
对该表的工资属性的完整性约束为: 2000 ≤ 工资 ≤ 5000
现将如下 2 个操作组织为事务 T ,操作 1 先执行,操作 2 后执行。
操作 1 : INSERT INTO Employees VALUES('03650', ' 研发 ', '4600')
操作 2 : UPDATE Employees SET 工资 = 工资 * 1.2
WHERE 部门 = ' 市场 ' OR 部门 = ' 研发 '
事务 T 执行完毕后,关系表 Employees 的数据是
A.
B.
C.
D.
A.从EMP中删除行('010','李四','02','4000')
B.从EMP中插入行('102','钱七','01','1600')
C.将EMP中雇员号='056'的工资改为1600元
D.将EMP中雇员号='101'的部门号改为'05'
公车的行驶时间只能在工作时间内,因此规定调度表中每天安排发车的时间在上午07:00:00至下午18:00:00范围内。(
【问题1】(4分) 请将下面创建调度关系的SQL语句的空缺部分补充完整,要求指定关系的主码、外码,以及调度表中每天安排发车的时间在上午07:00:00至下午18:00:00范围内的约束(由函数 Time Get_time(DATETIME StartTime)返回出车的时间)。 CREATE TABLE SCHEDULE(Sno CHAR(10), Eno CHAR(10) (a) , Cno CHAR(8) (b) , StartTime DATETIME (c) , EndTime DATETIME, PRIMARY KEY (d) ); 【问题2】(6分) (1)创建所有&39;奥迪&39;品牌汽车的调度信息的视图AudiSCHEDULE,属性有Eno、Ename、Cno、Brand、StartTime和EndTime,请将下面SQL语句的空缺部分补充完整。 CREATE (e) AS SELECT EMP,Eno,Ename, CAR,Cno,Brand, StartTime, EndTime FROM EMP,CAR, SCHEDULE WHERE (f) (2)驾驶员的奖金在收车时间写入时,由出车时间段自动计算,并用触发器来实现奖金的自动维护,函数float Bonus_value(DATETIME StartTime, DATETIME EndTime)依据发车时间和收车时间来计算本次出车的奖金。系统在每月初自动增加一条该员工的当月奖金记录,初始金额为零。请将下面SQL语句的空缺部分补充完整。 CREATE (g) Bonus_TRG AFTER (h) ON SCHEDULE REFERENCING new row AS nrow FOR EACH ROW BEGIN UPDATE BONUS SET (i) WHERE (j) AND Year=Get_Year(nrow.StartTime) AND Month= Get_Month(nrow.StartTime) ; END 【问题3】(5分) 请将下面SQL语句的空缺郜分补充完整。 (1)查询调度次数最多的汽车车牌号及其品牌。 SELECT CAR.Cno,Brand FROM CAR, SCHEDULE WHERE CAR.Cno =SCHEDULE.Cno GROUP BY (k) HAVING (l) (SELECT COUNT(*) FROM SCHEDULE CROUP BY Cno); (2)查询所有在调度表中没有安排过“大金龙”品牌车辆的驾驶员工员和姓名。 SELECT Eno,Ename FROM EMP WHERE Eno (m) (SELECT Eno FROM (n) WHERE (o) AND brand= ‘大金龙&39;);
(25)
A. 0
B. 1
C. 2
D. 4
(26)
A. 2C25H
B. 4096H
C. 4C25H
D. 8C25H
设有如下关系表: RST ______ ______ ______ A B C A B C A B C 1 1 2 3 1 3 1 1 2 2 2 3 2 2 3 3 1 3则下列操作中正确的是______ 。
A.T=R∩S
B.T=R∪S
C.T=R×S
D.T=R/S
(25)
A. 0
B. 1
C. 2
D. 4
(26)A. 2C25H
B. 4096H
C. 4C25H
D. 8C25H