習題題庫 [第十五章:常見的資料庫管理系統]
習題15-1

請安裝Oracle 並儲存第六章的網路書店資料庫 (圖6-1 資料庫綱目和圖4-4 範例資料庫),最後印出其儲存畫面。該資料庫綱目可參考以下的Create Table 指令檔:
http://www.mis.nsysu.edu.tw/db-book/OnlineStoreDB/Oracle-schema.txt

 
習題15-2
請安裝微軟 SQL Server 並儲存第六章的網路書店資料庫 (圖6-1 資料庫綱目和圖4-4 範例資料庫),最後印出其儲存畫面。該資料庫綱目可參考以下的CreateTable 指令檔:
http://www.mis.nsysu.edu.tw/db-book/OnlineStoreDB/SQL-Server-schema.txt
 
習題15-3
請安裝微軟Access 並儲存第六章的網路書店資料庫 (圖6-1 資料庫綱目和圖4-4 範例資料庫),最後印出其儲存畫面。
 
習題15-4
請安裝MySQL 並儲存第六章的網路書店資料庫 (圖6-1 資料庫綱目和圖4-4範例資料庫),最後印出其儲存畫面。該資料庫綱目可參考以下的Create Table 指令檔:
http://www.mis.nsysu.edu.tw/db-book/OnlineStoreDB/MySQL-schema.txt
 
會員制商店的銷貨資料庫 習題15-5 ~ 15-8
請設計一資料庫來儲存一會員制商店的銷貨資料。此資料庫包括四個資料表,分別名為 CUSTOMER (客戶)、PRODUCT (產品)、INVOICE (銷貨單) 和DETAILS (銷貨明細)。一張銷貨單含有數筆明細,每一筆明細代表所購買的每一樣產品。比如,一張典型的銷貨單如下:
銷貨單編號
發票編號
日期______                               客戶資料
產品編號 數量 單價
     
     

為了記載銷貨的資料,各資料表的欄位定義如下:

CUSTOMER:
Cno:長度為4 個文數字 /* 客戶編號 */
Cname:長度為最多10 個中文字 /* 客戶姓名 */
Sex:值為 ‘F’ 或 ‘M’ /* 性別 */
Address:長度為最多30 個中文字 /* 住址 */
Tel:格式為 (0n)nnn-nnnn,n 為0-9 的數字 /* 電話 */
其中主鍵為Cno。

PRODUCT:
Pno:長度為4 個文數字 /* 產品編號 */
Pname:長度為最多20 個中文字 /* 產品名稱 */
Brand:長度為最多20 個中文字 /* 品牌 */
其中主鍵為Pno。

INVOICE:
Ino:長度為4 個文數字 /* 銷貨單編號 */
Idate:欄位型態為簡單日期 (yyyy/mm/dd) /* 銷貨日期 */
ICno:長度為4 個文數字 /* 銷貨客戶編號 */
Uno:長度為10 個文數字 /* 發票編號 */
格式AANNNNNNNN,A 為英文字母,N 為0-9 數字
其中主鍵為Ino,但 Uno 亦是唯一,此外 ICno 為外部鍵 (foreign key),其相對應的主鍵為CUSTOMER (Cno),也就是說,ICno 的值必須存在於CUSTOMER(Cno) 裡。

DETAIL:
DIno:長度為4 個文數字 /* 銷貨單編號 */
DPno:長度為4 個文數字 /* 產品編號 */
Price:型態為數值 /* 產品的單價 */
Number:型態為數值 /* 產品的數量 */
其中 DIno 和 DPno 合起來為主鍵。DIno 為外部鍵,其相對應的主鍵為INVOICE (Ino);DPno 亦為外部鍵,其相對應的主鍵為 PRODUCT (Pno)。請自行鍵入一些範例資料。
 
習題15-5
請用Oracle 來儲存會員制商店的銷貨資料庫,並印出其儲存畫面。
 
習題15-6
請用微軟SQL Server 來儲存會員制商店的銷貨資料庫,並印出其儲存畫面。
 
習題15-7

請用微軟Access 來儲存會員制商店的銷貨資料庫,並印出其儲存畫面。

 
習題15-8
請用MySQL 來儲存會員制商店的銷貨資料庫,並印出其儲存畫面。
 
問卷系統資料庫 習題15-9 ~ 15-12
問卷的設計和使用是了解顧客滿意度的一個很普遍的方式。請設計一資料庫來儲存問卷的題目和調查結果。此資料庫包括四個資料表,分別名為QUESTIONAIRE (問卷題目)、CHOICE (選擇題選項)、SELECTION (選擇題結果)和 EXPRESSION (問答題結果)。
各資料表的欄位定義以下:

QUESTIONAIRE:
Qid:長度為4 個文數字 (字串) /* 題目id */
Seq:長度為2 個數字 (字串) /* 題目序號 */
Description:長度為最多255 個文字 (字串) /* 題目描述 */
Type:‘S’, ‘M’, or ‘A’ /* S:單選題,M:多選題,A:問答題 */
Visible:‘Y’ or ‘N’ /* Y:顯示題目,N:隱藏題目 */
其中主鍵為Qid。

CHOICE:
Qid:長度為4 個文數字 (字串) /*題目id */
No:長度為1 個文數字 (字串) /* 選項編號 */
Item:長度為最多100 個文字 (字串) /* 選項描述 */
其中Qid 和No 合起來為主鍵,此外Qid 為外部鍵,其相對應的主鍵為QUESTIONAIRE (Qid),也就是說,Qid 的值必須存在於 QUESTIONAIRE(Qid) 裡。

SELECTION:
Pid:長度為10 個文數字 (字串) /* 填問卷者之id */
格式ANNNNNNNNN,A 為英文字母,N 為0-9 數字
Qid:長度為4 個文數字 (字串) /* 題目id */
No:長度為1 個文數字 (字串) /* 選項編號 */
Date:欄位型態為簡單日期 (yyyy/mm/dd) /* 填寫日期 */
其中 Pid, Qid, 和No 合起來為主鍵,此外Qid, No 合起來為外部鍵,其相對應的主鍵為 QUESTIONAIRE (Qid, No)。

EXPRESSION:
Pid:長度為10 個文數字 (字串) /* 填問卷者之id */
格式ANNNNNNNNN,A 為英文字母,N 為0-9 數字
Qid:長度為4 個文數字 (字串) /* 題目id */
Date:欄位型態為簡單日期 (yyyy/mm/dd) /* 填寫日期 */
Content:長度為255 個文數字 (字串) /* 填寫內容 */
其中主Pid, Qid 合起來為主鍵,此外Qid 為外部鍵,其相對應的主鍵為QUESTIONAIRE (Qid)。
請自行鍵入一些範例資料。
 
習題15-9
請用Oracle 來儲存問卷系統資料庫,並印出其儲存畫面。
 
習題15-10
請用微軟SQL Server 來儲存問卷系統資料庫,並印出其儲存畫面。
 
習題15-11
請用微軟Access 來儲存問卷系統資料庫,並印出其儲存畫面。
 
習題15-12
請用MySQL 來儲存問卷系統資料庫,並印出其儲存畫面。