当前位置:首页 → 计算机类 → 软件水平考试 → 中级数据库系统工程师->某工程项目公司信息管理系统部分关系模拟式如下:职工(职工编号
某工程项目公司信息管理系统部分关系模拟式如下:职工(职工编号,姓名,性别,居住城市)项目(项目编号,项目名称,状态,城市,负责人编号)职工项目(职工编号,项目编号)其中:(1)一个职工可以同时参与多个项目,一个项目需要多个职工参与。(2)职工居住城市与项目所在城市来自同一个域。(3)每个项目必须有负责人,且负责人为职工关系中成员。(4)项目状态有两个:0表示未完成,1表示已完成。
【问题1】下面是创建职工关系SQL语句,职工编号唯一标识一个职工,职工姓名不能为空。请讲空缺部分补充完整。CREATE TABLE 职工(职工编号 CHAR(6),姓名 CHAR(8)①,性别 CHAR(2),居住城市 VARCHAR(20),PRIMARY KEY②);
【问题2】下面是创建项目关系SQL语句,请实习相关完整性约束。CREATE TABLE 项目(项目编号 CHAR(6),项目名称 VARCHAR(20),状态 CHAR(1) CHECK③,城市 VARCHAR(20),负责人编号 CHAR(6)④,FOREIGN KEY⑤ REFERENCES⑥);
【问题3】请完成下列查询SQL语句。(1)查询至少参加两个项目职工编号和参与项目数SELECT 职工编号,⑦,FROM 职工项目GROUP BY⑧,HAVING⑨;(2)查询参与居住城市正在进行工程项目职工工号和姓名。SELECT 职工.职工编号,姓名FROM 职工,职工项目,项目WHERE职工.职工编号=职工项目.职工编号 AND 项目.项目编号=职工项目.项目编号AND⑩ AND11假设项目编号为P001项目负责人李强(其用户名为U1)有对参与该项目职工进行查询权限。下面是建立视图emp和进行授权SQL语句,请将空缺部分补充完整。(1)CREATE VIEW 12AS SELECT 职工编号,姓名,性别,城市FROM 职工WHERE 职工编号IN (SELECT 13FROM 职工项目WHERE 14WITH CHECK OPTION;GRANT 15 ON emp TO U1)
本题考查SQL语言相关知识
1、①NOT NULL②(职工编号)
2、③(状态 IN(‘0’,‘1’))④NOT NULL⑤负责人编号⑥职工(职工编号)
3、⑦COUNT(项目编号)⑧职工编号⑨COUNT(项目编号)>=2⑩职工.居住城市=项目.城市。11项目.状态=‘0’。12emp。13职工编号。14项目编号=’P001’。15SELECT









