【說明】
某法院要開發(fā)一個(gè)訴訟案件信息處理系統(tǒng),該信息系統(tǒng)的部分關(guān)系模式如下:
職工(職工編號,姓名,崗位)
律師(律師編號,姓名)
被告(被告編號,姓名,地址)
案件(案件編號,案件類型,案件描述,被告,律師,主審法官,立案日期,狀態(tài),
結(jié)案日期,結(jié)案摘要)
審理(審理編號,案件編號,審理日期,摘要)
有關(guān)關(guān)系模式的屬性及相關(guān)說明如下:
(1)職工關(guān)系模式的崗位有“法官”、“書記員”和“其他”。
(2)訴訟立案后,即在案件關(guān)系中插入一條相應(yīng)記錄。案件關(guān)系模式的狀態(tài)有“待處理”、“審理中”、“結(jié)案”和“撤銷”,一個(gè)案件開始立案時(shí)其案件狀態(tài)為“待處理”。
(3)案件關(guān)系模式的案件類型有“偷竊”、“縱火”等。
(4) 一個(gè)案件自立案到結(jié)案的整個(gè)過程由一位法官和一位律師負(fù)責(zé),一個(gè)案件通常經(jīng)過一次到多次審理。
【問題1】
假設(shè)案件編號唯一標(biāo)識一個(gè)案件,且立案日期小于等于結(jié)案日期。請將如下創(chuàng)建案件關(guān)系的SQL語句的空缺部分補(bǔ)充完整。
CREATE TABLE案件(
案件編號CHAR(6) (a) ,
案件類型VARCHAR(10),
案件描述VARCHAR (200),
立案日期DATE
被告VARCHAR (6) REFERENCES被告(被告編號),
律師VARCHAR (6) REFERENCES律師(律師編號),
主審法官VARCHAR (6) (b) ,
狀態(tài)VARCHAR (6) (c) DEFAULT‘待處理’,
結(jié)案日期DATE,
結(jié)案摘要VARCHAR (200),
(d) );
【問題2】
請完成下列查詢的SQL語句。
(1)查詢當(dāng)前待處理的訴訟案件,顯示案件的案件編號、立案日期、被告姓名、被告地址、案件描述、律師姓名和主審法官姓名。
SELECT案件編號,立案日期,被告.姓名AS被告姓名,地址AS被告地址,案件描述,律師.姓名AS律師姓名, (e)
FROM (f)
WHERE案件.被告=被告.被告編號AND案件.律師=律師.律師編號AND
(g) ;
(2)查詢2009年立案的各類案件數(shù),并按案件數(shù)降序排序。(日期格式舉例:2009年1月1日表示為01-JAN-2009,2009年12月31日表示為31-DEC-2009)
SELECT類型,count(*) AS案件數(shù)
FROM案件
WHERE (h)
GROUP BY案件類型
(i) ;
(3)查詢立案次數(shù)超過5次的被告姓名和地址。
SELECT姓名,地址,count(*)
FROM案件,被告
WHERE (j)
GROUP BY (k)
(1) ;
【問題3】
當(dāng)插入一個(gè)審理記錄時(shí),檢查案件的狀態(tài),若狀態(tài)為“未處理”,則將其修改為“審理中”。下面是用觸發(fā)器實(shí)現(xiàn)該需求的SQL語句,請將空缺部分補(bǔ)充完整。
CREATE TRIGGER 審理TRIGGER AFTER (m) ON審理
REFERENCING new row AS nrow
FOR EACH row
WHEN‘未處理’=(SELECT狀態(tài)
FROM案件
WHERE案件編號- nrow.案件編號)
BEGIN
UPDATE案件 (n)
WHERE (o) ;
END