數(shù)據(jù)項(xiàng)是數(shù)據(jù)庫(kù)的關(guān)系中不可再分的數(shù)據(jù)單位,下表分別列出了數(shù)據(jù)的名稱、數(shù)據(jù)類型、長(zhǎng)度、取值能否為空。利用SQLServer2008建立學(xué)生選課數(shù)據(jù)庫(kù),其基本表清單及表結(jié)構(gòu)描述如下:
數(shù)據(jù)庫(kù)中用到的表:
數(shù)據(jù)庫(kù)中用到的表:
數(shù)據(jù)庫(kù)表名關(guān)系模式名稱備注
Student學(xué)生學(xué)生學(xué)籍信息表
Course課程課程基本信息表
selectKe選修課程成績(jī)選課成績(jī)信息表
teacher教師教師信息表
connection開(kāi)課教師開(kāi)課信息表
studentTable學(xué)生賬號(hào)學(xué)生賬號(hào)表
Student基本情況數(shù)據(jù)表,結(jié)構(gòu)如下:
字段名字段類型NotNull說(shuō)明
xhvarchar(10)PRIMARYKEYNOTNULL學(xué)號(hào)
passwordvarchar(15)NULL,密碼
namenvarchar(10)NULL,姓名
agenvarchar(10)NULL,年齡
sexvarchar(2)NULL,性別
birthtimedatetimeNULL,出生年月
addressnvarchar(50)NULL,家庭地址
classesvarchar(20)NULL,班級(jí)
telvarchar(20)NULL,聯(lián)系電話
nationvarchar(20)NULL,籍貫
professionvarchar(20)NULL,專業(yè)
imagenvarchar(50)NULL,圖片
graduationnchar(10)NULL在校情況
course數(shù)據(jù)表,結(jié)構(gòu)如下:
字段名字段類型約束控制說(shuō)明
knovarchar(20)PRIMARYKEYNOTNULL課程號(hào)
knamevarchar(20)NOTNULL課程名
Khourvarchar(10)NOTNULL課程學(xué)時(shí)
creditvarchar(3)NOTNULL學(xué)分
kdescriptionvarchar(50)NOTNULL課程簡(jiǎn)介
selectKe數(shù)據(jù)表,結(jié)構(gòu)如下:
字段名字段類型約束控制說(shuō)明
xhvarchar(20)PRIMARYKEYNOTNULL學(xué)號(hào)
knovarchar(20)PRIMARYKEYNOTNULL課程號(hào)
scorevarchar(3)NULL成績(jī)
knamevarchar(20)NOTNULL課程名
teacher數(shù)據(jù)表,結(jié)構(gòu)如下:
字段名字段類型約束控制說(shuō)明
tnovarchar(20)PRIMARYKEYNOTNULL教師號(hào)
passwordvarchar(15)NULL密碼
tnamevarchar(10)NULL教師姓名
xbvarchar(2)NULL性別
connection數(shù)據(jù)表,結(jié)構(gòu)如下:
字段名字段類型約束控制說(shuō)明
tnovarchar(20)PRIMARYKEYNOTNULL教師號(hào)
knovarchar(20)PRIMARYKEYNOTNULL課程號(hào)
studentTable數(shù)據(jù)表,結(jié)構(gòu)如下:
字段名字段類型約束控制說(shuō)明
xhvarchar(20)PRIMARYKEYNOTNULL學(xué)號(hào)
passwordvarchar(20)NOTNULL密碼
三概念模型設(shè)計(jì) 名易軟件-學(xué)生學(xué)籍管理系統(tǒng)概念模型設(shè)計(jì) 學(xué)生學(xué)籍管理系統(tǒng)的實(shí)體有學(xué)生實(shí)體、教師實(shí)體、選課實(shí)體、課程實(shí)體、教課實(shí)體。各個(gè)實(shí)體具體的描述E-R圖如圖下所示:在這里我只給出一個(gè)例子圖:
四邏輯和物理結(jié)構(gòu)設(shè)計(jì) 4.1由系統(tǒng)ER圖轉(zhuǎn)化而得到的關(guān)系模式如下:
學(xué)生(學(xué)號(hào),姓名,性別,年齡,出生年月,家庭地址,班級(jí),學(xué)院,民族,聯(lián)系電話,照片,在校情況),其主關(guān)鍵字為學(xué)號(hào);
課程(課程號(hào),課程名,課程學(xué)時(shí),課程學(xué)分,課程簡(jiǎn)介),其主關(guān)鍵字為課程號(hào);
選修成績(jī)(學(xué)號(hào),課程號(hào),成績(jī),課程名),其主關(guān)鍵字分別為學(xué)號(hào)、課程號(hào);
教師(教師號(hào),密碼,教師姓名,性別),其主關(guān)鍵字為教師號(hào)
開(kāi)課(教師號(hào),課程號(hào)),其主關(guān)鍵字分別為教師號(hào)、課程號(hào);
學(xué)生賬號(hào)(學(xué)號(hào),密碼),其主關(guān)鍵字為學(xué)號(hào)。
4.2確定關(guān)系模型的存取方法
確定數(shù)據(jù)庫(kù)的存取方法,就是確定建立哪些存儲(chǔ)路徑以實(shí)現(xiàn)快速存取數(shù)據(jù)庫(kù)中的數(shù)據(jù)。在主關(guān)鍵字上建立索引,索引雖然能加速查詢的速度,但是為數(shù)據(jù)庫(kù)中的每張表都設(shè)置大量的索引并不是一個(gè)一個(gè)好的方法。每個(gè)索引都將占用一定的存儲(chǔ)空間,如果建立聚簇索引(會(huì)改變數(shù)據(jù)物理存儲(chǔ)位置的一種索引),占用需要的空間就會(huì)更大;其次,當(dāng)對(duì)表中的數(shù)據(jù)進(jìn)行增加、刪除和修改的時(shí)候,索引也要?jiǎng)討B(tài)地維護(hù),這樣就降低了數(shù)據(jù)的更新速度。對(duì)于那些在查詢中很少使用和參考的列不應(yīng)該創(chuàng)建索引。因?yàn)榧热贿@些列很少使用到,有索引并不能提高查詢的速度。相反,由于增加了索引,反而降低了系統(tǒng)的維護(hù)速度和增大了空間需求。所以在確定關(guān)系模型的存儲(chǔ)方法考慮諸多原因,只對(duì)于開(kāi)課表中的教師號(hào)以及課程號(hào)作為索引。
4.3確定數(shù)據(jù)庫(kù)的存儲(chǔ)結(jié)構(gòu)
確定數(shù)據(jù)庫(kù)的存儲(chǔ)結(jié)構(gòu)主要指確定數(shù)據(jù)的存放位置和存儲(chǔ)結(jié)構(gòu)包括確定關(guān)系、索引、日志、備份等的存儲(chǔ)安排及存儲(chǔ)結(jié)構(gòu)以及確定系統(tǒng)存儲(chǔ)參數(shù)的配置。
信息發(fā)布:廣州名易軟件有限公司 http://www.jetlc.com