第三章 系統總體設計
3.3 詳細設計
3.3.2 資料庫中表的設計
1.question 表結構
通常,每一類型的試題都應有一個表結構。但考慮到目前系統存貯空間 可以很大,也爲了更加方便。我們採用把全部試題集中在一起的方案來建 立資料表,每道客觀題均有四個備選答案項,每個試題均具有題型、所屬 科目等資料段表示其屬性。欄位名一般是相應的英文單詞。這樣,查詢起 來較方便,會節約時間,也不致於造成資料十分雜亂等。詳細設計如下表 所示:
表 3-1 question 表
欄位名稱 類型 說明
Haveselect 數位 常整型
ID 自動編號 常整型,遞增,主鍵 Question 文本 欄位大小 200
A 文本 欄位大小 50 B 文本 欄位大小 50 C 文本 欄位大小 50 D 文本 欄位大小 50 Answer 文本 欄位大小 50 Type 文本 欄位大小 50 Subjectname 文本 欄位大小 50
各欄位說明:
(1)haveselect 欄位代表在隨機選題時是否已經被某用戶選過,類型爲 數位。
(2)ID 是問題的 id 號,用來唯一標誌該問題,把它設爲主鍵,類型爲 自動編號。
(3)Question 欄位爲問題內容,類型爲文本。
(4)A 欄位代表選項 A 的內容 (5)B 欄位代表選項 B 的內容 (6)C 欄位代表選項 C 的內容
(7)D 欄位代表選項 D 的內容 (8)Answer 欄位表示答案選項 (9)Type 欄位表示試題類型
(10)subjectname 欄位代表試題所屬科目名稱 2.subject 表結構
表 3-2 subject 表
欄位名稱 類型 說明
Multiper 數位 常整型 Singleper 數位 常整型 Multinumber 數位 常整型 Singlenumbe
r
數位 常整型
Subjectname 文本 欄位大小 50 Testtime 數位 常整型
Id 自動編號 常整型,遞增,主鍵 各欄位說明:
(1)multiper 欄位代表在某考試科目的考試題中每個基本題的分值。
(2)singleper 欄位代表在某考試科目的考試題中每個應用題的分值。
(3)multinumber 欄位爲某科的應用題題量。
(4)singlenumber 欄位爲某科的應用題題量。
(5)subjectname 欄位代表科目名稱。
(6)testtime 欄位代表某科的考試總時間。
(7)id 欄位代表科目的 id 號。
3.score 表結構
表 3-3 score 表
欄位名稱 類型 說明
Studentname 文本 欄位大小 50 Subjectname 文本 欄位大小 50 Score 數位 常整型
Id 自動編號 常整型,遞增,主鍵
Endtime 日期/時間 各欄位說明:
(1)studentname 欄位代表在某次考試記錄中學生的名字。
(2)subjectname 欄位代表在某次考試紀錄中考試科目名。
(3)score 欄位爲某次考試紀錄中考試分數。
(4)id 欄位爲某次考試紀錄的標誌號。
(5)endtime 欄位代表考試的結束時間。
4.student 表結構
表 3-4 student 表
欄位名稱 類型 說明
Studentname 文本 欄位大小 50 Studentpassw
ord
文本 欄位大小 50
Id 自動編號 常整型,遞增,主鍵 各欄位說明:
(1)studentname 欄位代表學生的名字。
(2)studentpassword 欄位代表密碼。
(3)id 欄位爲學生的標誌號。
5.admin 表結構
表 3-5 admin 表
欄位名稱 類型 說明
Name 文本 欄位大小 50 Password 文本 欄位大小 50
Id 自動編號 常整型,遞增,主鍵 各欄位說明:
(1)name 欄位代表管理員的名字。
(2)password 欄位代表密碼。
(3)id 欄位爲管理員的標誌號。