某法院要开发一个诉讼案件信息处理系统,该信息系统的部分关系模式如下: 职工(职

最全题库2022-08-02  45

问题 某法院要开发一个诉讼案件信息处理系统,该信息系统的部分关系模式如下:职工(职工编号,姓名,岗位)律师(律师编号,姓名)被告(被告编号,姓名,地址)案件(案件编号,案件类型,案件描述,被告,律师,主审法官,立案日期,状态,结案日期,结案摘要)审理(审理编号,案件编号,审理日期,摘要)有关关系模式的属性及相关说明如下:(1)职工关系模式的岗位有“法官”、“书记员”和“其他”。(2)诉讼立案后,即在案件关系中插入一条相应记录。案件关系模式的状态有“待处理”、“审理中”、“结案”和“撤销”,一个案件开始立案时其案件状态为“待处理”。(3)案件关系模式的案件类型有“偷窃”、“纵火”等。(4) 一个案件自立案到结案的整个过程由一位法官和一位律师负责,一个案件通常经过一次到多次审理。【问题1】假设案件编号唯一标识一个案件,且立案日期小于等于结案日期。请将如下创建案件关系的SQL语句的空缺部分补充完整。CREATE TABLE案件(案件编号CHAR(6)    (a)     ,案件类型VARCHAR(10),案件描述VARCHAR (200),立案日期DATE被告VARCHAR (6) REFERENCES被告(被告编号),律师VARCHAR (6) REFERENCES律师(律师编号),主审法官VARCHAR (6)     (b) ,状态VARCHAR (6)    (c)    DEFAULT‘待处理’,结案日期DATE,结案摘要VARCHAR (200),    (d)     );【问题2】请完成下列查询的SQL语句。(1)查询当前待处理的诉讼案件,显示案件的案件编号、立案日期、被告姓名、被告地址、案件描述、律师姓名和主审法官姓名。SELECT案件编号,立案日期,被告.姓名AS被告姓名,地址AS被告地址,案件描述,律师.姓名AS律师姓名, (e)      FROM      (f)     WHERE案件.被告=被告.被告编号AND案件.律师=律师.律师编号AND       (g)     ;(2)查询2009年立案的各类案件数,并按案件数降序排序。(日期格式举例:2009年1月1日表示为01-JAN-2009,2009年12月31日表示为31-DEC-2009)SELECT类型,count(*) AS案件数FROM案件WHERE     (h)     GROUP BY案件类型     (i) ;(3)查询立案次数超过5次的被告姓名和地址。SELECT姓名,地址,count(*)FROM案件,被告WHERE     (j)    GROUP BY     (k)        (l)    ;【问题3】当插入一个审理记录时,检查案件的状态,若状态为“未处理”,则将其修改为“审理中”。下面是用触发器实现该需求的SQL语句,请将空缺部分补充完整。CREATE TRIGGER  审理TRIGGER AFTER    (m) ON审理REFERENCING new row AS nrowFOR EACH rowWHEN‘未处理’=(SELECT状态FROM案件WHERE案件编号- nrow.案件编号)BEGINUPDATE案件    (n) WHERE     (o) ;END

选项

答案

解析 【问题1】
(a) PRIMARY KEY或NOT NULL UNIQUE
(b) REFERENCES职工(职工编号)
(c) CHECK VALUES IN(‘待处理’,‘审理中’,‘结案’,‘撤销’)
(d) CHECK(立案日期<=结案日期)
【问题2】
(1)(e)职工.姓名AS主审法官姓名
(f)案件,被告,律师,职工(关系模式的顺序无关)
(g)案件.主审法官=职工.职工编号 AND案件.案件状态=‘待处理’
(2)(h)立案日期BETWEEN ’OI-JAN-2009’ AND ‘31_DEC_2009’或者立案日期>=
‘Ol-JAN-2009’AND立案日期<=‘31-DEC-2009’
(i) ORDER BY案件数DESC
(3)(j)案件.被告=被告.被告编号
(k)姓名,地址
(l) HAVING count(*)>5
【问题3】
(m) INSERT
(n) SET状态=’审理中’
(o)案件编号=nrow.案件编号
转载请注明原文地址:https://www.tihaiku.com/congyezige/2419670.html

最新回复(0)