lawpalyer logo

資訊處理 101 年高等資料庫設計考古題

民國 101 年(2012)資訊處理「高等資料庫設計」考試題目,共 4 題 | 資料來源:考選部

0 題選擇題 + 4 題申論題

考慮以下用來記載考生到考的資訊: Exam 資料表,包括以下欄位: ExamDateTime //考試開始時間 Supervisor //監考官姓名 RoomNo //教室編號 SupervisorUnit //監考官隸屬單位 Building //所在大樓 TotalExaminee 應考人數 ActualExaminee 到考人數 函數相依(Functional dependency)如下: Supervisor→SupervisorUnit {RoomNo, ExamDateTime}→{Supervisor, TotalExaminee, ActualExaminee} RoomNo→Building 請推導出Exam 資料表的關聯鍵(key)。(5 分) 將Exam 關聯綱目分解成滿足第二正規式(Second Normal Form)但 不滿足第三正規式(Third Normal Form)的綱目,請列出分解後每一關 聯綱目之主鍵(Primary key)和外鍵(Foreign key)。(5 分) 將Exam 關聯綱目分解成滿足第三正規式(Third Normal Form)的綱 目,請列出分解後每一關聯綱目之主鍵(Primary key)和外鍵(Foreign key)。(5 分) 用SQL CREATE TABLE 語法表達出上一小題的Exam 關聯綱目, 且要滿足TotalExaminee≥ActualExaminee 的限制,屬性的形態請自 訂。(10 分)
考慮以下的討論版資料庫綱目(Database schema): Member(mId, name, bDate, gender) //會員編號,姓名,生日,性別 Article(mId, aId, title, content, postDate) //會員編號,文章編號,標題,內容,張貼日期 Reply(mId, aId, rTime, content, responder) //會員編號,文章編號,回覆日期時間,回覆內容,回覆者 若我們有以下的SQL 敘述: SELECT mId, name FROM Member AS M WHERE gender = ‘M’ AND EXISTS (SELECT * FROM Article AS A WHERE mId = M.mId AND (mId, aId) IN (SELECT DISTINCT mId, aId FROM Reply WHERE mId = A.mId AND aId = A.aId GROUP BY mId, aId HAVING COUNT(*) > 10)); 請說明以上查詢句的意義。(5 分) 以上查詢句的執行效率可能不佳,請指出造成其效率不佳的語法,並 改寫成一個效率較佳的敘述。(10 分) 針對你所改寫的查詢句,若想進一步提升其執行效率,請問可以建置 那些索引(Index)?請寫出建置這些索引的SQL 敘述並說明原因。 (10 分)
考慮以下的XML Schema: 1 2 3
9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 <?xml version ="1.0"?> <schema targetNamespace="http://www.acme.com.tw/items/" xmlns=http://www.w3.org/2001/XMLSchema xmlns:items=" http://www.acme.com.tw/items/"> <element name="items" type="Items"> <unique name="partNumAndName"> <selector xpath="item"/> <field xpath="partNum"/> <field xpath="productName"/> </unique> <element> <complexType name="Items"> <sequence> <element name="item" minOccurs="0" maxOccurs="unbounded"> <complexType> <attribute name="partNum" type="string" use="required"/> <sequence> <element name="productName" type="string"/> <element name="quantity" type="xsd:positiveInteger"/> </sequence> </complexType> </element> </complexType> </schema> 請列出以上XML Schema 的錯誤並修正之。(15 分) 請說明以上XML Schema 的意義。(10 分) 四、考慮以下的實體關係圖(ERD): N 1 N N 1 N M 1 Student sId Course cId Article Takes aId cName Has Board PostedIn Posts bName start content sName 請轉成最精簡的關聯式資料庫綱目(Relational database schema),每 一關聯(relation)僅需表達出其屬性(Attribute)名稱、主鍵(Primary key)、外鍵(Foreign key)和相對應的主鍵即可,屬性形態不須寫出。 (15 分) 若想表達出「PO 在一課程討論版的每一篇文章之作者必須修該課 程」,請問該如何使用SQL 語法設定。(10 分)