第1题
第2题
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');
第3题
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');
第4题
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');
第5题
Emp( eid ,ename,age,did,salary) ,其各列含义为:职工号,姓名,年龄,部门号,工资
Dept( did ,dname,mgr_id) ,其各列含义为:部门号,部门名称,部门经理职工号
写出一条 SQL 语句,查询工资大于 10000 ,且与他所在部门的经理年龄相同的职工姓名 。 ( 6 分)
第6题
A.统计职工的总人数
B.统计每一部门的职工人数
C.统计职工服务的部门数目
D.统计每一职工服务的部门数目
第7题
·职工表EMP(E,ENAME,AGE,SALARY,D),其属性分别表示职工工号,姓名,年龄,工资,工作部门的编号。
·部门表DEPA(Dgt,DNAME,MGR),其属性分别表示部门编号,部门名称,部门经理的工号。此处经理的工号,就是他自己的职工工号。
(1)在数据库中要求每个经理的工资大于2000元。试在定义DEPA表时,添加一个CHECK子句,以满足上述要求(只需写出CHECK子句,不必写出其他语句)。
(2)把年龄在50岁以上的经理全部免职(即把这些部门的MGR值置为空值)。
(3)创建一个年龄在50岁以上的职工视图,属性为(D,DNAME,E,ENAME,AGE,SALARY)。
第8题
车间基本表:DEPT(DNO,DNAME,MGR-NO),其属性分别表示车间编号、车间名和车间主任的职工号.
职工基本表:EMP(ENO,ENAME,SEX,SALARY,DNO),其属性分别表示职工号、姓名、性别、工资和所在车间的编号.
试用SQL语句完成下列操作:
检索“金工车间”的男职工的职工号和姓名.
第9题
A.πENO,ENAME(σDNAME≠'金工车间'(EMPDEPT))
B.πENO,ENAME
C.πENO,ENAME(EMP)-πENO,ENAME (σDNAME='金工车间'(EMPDEPT))
D.πENO,ENAME (EMP)-πENO,ENAME (σDNAME≠'金工车间'(EMPDEPT))
第10题
WHERE empno=(SELECT empno FROM dept WHERE dname="研发部")
B.SELECT empno,ename FROM emp
WHERE deptno=(SELECT deptno FROM dept WHERE dname='研发部')
C.SELECT empno,ename FROM emp
WHERE deptno=(SELECT * FROM dept WHERE dname='研发部')
D.SELECT empno,ename FROM dept
WHERE deptno=(SELECT deptno FROM emp WHERE dname="研发部")
为了保护您的账号安全,请在“上学吧”公众号进行验证,点击“官网服务”-“账号验证”后输入验证码“”完成验证,验证成功后方可继续查看答案!