考慮以下的犯罪資料庫綱目(database schema):
Criminal(pId, name, birthdate, gender, gang, gangDesc)
//犯罪人身分證字號,姓名,生日,性別,幫派名稱,幫派敘述
Crime(cId, date, type, detail, name, place)
//刑案編號,發生日期,種類,敘述,案名,地點
Commit(pId, cId, sentence)
// 身分證字號,刑案編號,判刑資訊
此外,並有以下的函數相依(functional dependency):
Criminal:
{pId}→{name, birthdate, gender, gang}
{gang}→{gangDesc}
Crime:
{cId}→{date, type, detail, name, place}
{name, date}→{cId}
Commit:
{pId, cId}→{sentence}
請用以上函數相依推論出Criminal, Crime 和Commit 的候選鍵(candidate keys),
請注意必須用推論的方式來證明,否則不給分。(10 分)
以上資料庫綱目滿足第二正規式(2NF)嗎?滿足第三正規式(3NF)嗎?若不
滿足,請舉出並說明所有造成不滿足的函數相依。(10 分)
請寫出以下查詢之SQL 敘述,請注意,每一小題只能用一個SQL 敘述表達。
找出所有未成年的罪犯之身分證字號、姓名和生日。(10 分)
找出所有「OO 幫」成員所犯的刑案名稱和發生日期。(10 分)
列出過去5 年,每年的刑案發生次數。(10 分)