MySQL數(shù)據(jù)庫設(shè)計_第1頁
MySQL數(shù)據(jù)庫設(shè)計_第2頁
MySQL數(shù)據(jù)庫設(shè)計_第3頁
MySQL數(shù)據(jù)庫設(shè)計_第4頁
MySQL數(shù)據(jù)庫設(shè)計_第5頁
已閱讀5頁,還剩10頁未讀 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、MySQL數(shù)據(jù)庫設(shè)計MySQL數(shù)據(jù)庫設(shè)計課程設(shè)計說明書題 目:駕校學(xué)員管理系統(tǒng)院 系:信息與智能工程系專業(yè)班級:嵌入式技術(shù)與應(yīng)用學(xué) 號:2011251011學(xué)生姓名:優(yōu)態(tài)指導(dǎo)教師:郭傳2012年1月9日駕校學(xué)員管理系統(tǒng)一.系統(tǒng)概述駕校學(xué)員管理系統(tǒng)主要用于管理駕校的各種數(shù)據(jù),利用這種mysql數(shù)據(jù)庫 的駕校管理系統(tǒng)可以給學(xué)員的管理資料的整理,資料的查詢,數(shù)據(jù)的處 理帶來了很大的方便,能夠很大的提高管理員的工作效率.本系統(tǒng)主要用于管理學(xué)員的學(xué)籍信息/體檢信息/成績信息和駕駛 證的領(lǐng)取信息等.這些信息的錄入/查詢/修改等操作都是該系統(tǒng) 的重點解決的問題.本系統(tǒng)分為5個管理部分,即用戶的管理/秘籍信息

2、管理/體檢信 息管理/成績信息管理和領(lǐng)證信息管理.本駕校學(xué)員管理系統(tǒng)的開發(fā)語言為java語言,選擇的數(shù)據(jù)庫是 mysql.本系統(tǒng)是B/ S架構(gòu)的系統(tǒng),需要web服務(wù)器tomcat二.系統(tǒng)功能駕校學(xué)員管理系統(tǒng)主要的功能是5個管理部分,即用戶的管理/秘籍信息 管理/體檢信息管理/成績信息管理和領(lǐng)證信息管理.本系統(tǒng)的管理模塊 如圖所示駕校學(xué)員管理系統(tǒng)用戶信息管理學(xué)員學(xué)一日信息管理學(xué)員體檢信息管理學(xué)員成績信息管理學(xué)員領(lǐng)aE信息管理圖中模塊的詳細介紹如下:用戶信息管理:主要是對管理員的登錄進行管理.管理員登錄成功后,系統(tǒng)會進 入到系統(tǒng)的管理界面,而且管理員可以修改自己的密碼.學(xué)籍信息管理:主要是對學(xué)生信

3、息的插入/查詢/修改和刪除.查詢學(xué)員的信息時, 可以通過學(xué)號/姓名/報考的車型和學(xué)員的狀態(tài)進行查詢/通過這四個方面的處 理,使學(xué)籍信息的管理更加的方便.體檢信息管理:主要對學(xué)員的體檢信息的插入/查詢/修改和刪除.成績信息管理:對學(xué)員的學(xué)籍信息進行插入/查詢/修改和刪除等操作,以便有效 的管理學(xué)員的成績信息.領(lǐng)證信息管理:對學(xué)員的駕駛證的領(lǐng)取進行管理.這部分主要是對學(xué)員的領(lǐng)證信 息的插入/查詢/修改和刪除等操作.這樣可以保證學(xué)員的駕駛證領(lǐng)取后,領(lǐng)取駕 駛證的信息能夠有效的管理.三.數(shù)據(jù)庫設(shè)計.數(shù)據(jù)庫設(shè)計是開發(fā)管理系統(tǒng)的一個重要的步驟,下面是數(shù)據(jù)庫的設(shè)計過程.數(shù)據(jù)庫設(shè)計是要確定創(chuàng)建一些表/表中的字

4、段/字段的數(shù)據(jù)類型和字段的長度.1.設(shè)計表本系統(tǒng)所有的表都放在drivingschool數(shù)據(jù)庫下,創(chuàng)建drivingschool數(shù)據(jù)庫的 SQL代碼如下:CREATE DATABASE drivingschool;nysq:l show databases; +-+:Database!+!infopmation_schema !Ibookdata!dr-iu incschoo 1!mysql!(!test!i+1-運行的結(jié)果如圖:I5 rows in set desc user;Field ; Type! Null ! Key ; Default ; Extra !:usepname : ua

5、Fchar(20) : NO: PRI ! MULL:password ! uaichar(20) ! NO! MULL2 rows in set L studentinfo 表studentinfo表中主要的存放學(xué)員的學(xué)籍信息,包括學(xué)號/姓名/性別/年齡和身 份證號等信息.用sno字段表示學(xué)號,因為學(xué)號是studentinfo表的主建,所以 sno字段是下能為空值的,而且必須是唯一的.identify字段表示學(xué)員的身份證, 而每個學(xué)員的身份證必須是唯一的.因為在些的身份證是以字母x結(jié)束的,所以 identify字段設(shè)計為VARCHAR類型.Sex字段表示為學(xué)員的性別,該字段只有”男“和“女”

6、兩種取值.因此sex字段 使用enum類型.scondition字段表示學(xué)員的學(xué)業(yè)狀態(tài),每個學(xué)員只有3種狀態(tài), 分別為“學(xué)習(xí)“ r結(jié)業(yè) /“退學(xué)”.因此,scondition字段也使用onum類型. 入學(xué)時間和畢業(yè)時間都是日期,因此選擇date類型.s_text字段用于存儲備注信 息,所以選擇text類型比較合適.student info表的每個字段的信息如下表所示:字段名字段 描述數(shù)據(jù)類型主鍵外鍵非空唯一默認 值自 增Sno學(xué)號Nit(8)是否是是無否Sname姓名Varchar(20)否否是否無否Sex性別Enum否否是否無否Age年齡Int (3)否否否否無否Identify身份SE號V

7、archar(18)否否是是無否tel電話Varchar(15)否否否否無無Car.type報考 車型Varchar(4)否否是否無否Enroll.time入學(xué) 時間date否否是否無否Leave_time畢業(yè) 時間date否否否否無否scondition學(xué)業(yè)狀態(tài)enum否否是否無否S.text備注text否否否否無吞創(chuàng)建student info表的sql代碼如下:Create table studentinfo(Sno int (8) primary key unique not null,Sname varchar(20) not null,Sex enuin(男,女)not null,A

8、ge int (3),Identify varchar(18) unique not null,Tel varchar(15),Car.type varchar(4) not null,Enro Uptime date not null,Leave_time date,Scondition enum(學(xué)習(xí)結(jié)業(yè),退學(xué))not null,S_text text);Student info表創(chuàng)建在功以后,通過desc語句查看studentinfo表的結(jié)構(gòu),也可 以通過show create table語句查看studentinfo表的詳細信息,查看如圖:11 rows in set mysql sh

9、ow create table student info;! Table; Create Table 0H+! studentinfo ! CREATE TABLE studentinf0 Yn。NOT NULL.snam。 uaFchai* NOT NULL,、3cx cnum男女NOT NULL,ey- intDEFAULT NULL,identify uarchar NOT HULL,tel? uarchar DEFAULT NULL,、car_type、 uarchar(4 N01 NULL,enroll_time date NOT NULL,leaue_time date DEFAU

10、LT NULL,飛condition、eniun。學(xué)習(xí),/結(jié)業(yè)J退學(xué)NOT NULL, text text.PRIMARY KFV4飛n。、),UNIQUE KEV no&。UNIQUE KEV identifyidentifyKEY 、index_stu_iiame、 ,KEY index-car car_type、KEY % index_con * Cscondition ENGlNE=lnnoDB DEFAULT CHAKSET=latinl ;半,exeC:Program F!lesMySQLMySQL Server 5.1binmyqLiysql desc student inf o

11、 ;Field +-Type!Null1 1 r -A- 一Key1 1Default-+! Extra,一.Jsno T-11int!NO11PRIT-11NULLT11snane1 1uarchar!NO11MUL11NULL1 1sex1 1eniim。男,女D;NO1 11 1NULL1 1age 1int!YES1 11 1NULL1 1identify 1uarchar!NO1 1UNI1 1NULL1 1tel 1uarchar!YES1 11 1NULL1 1car_type1 1uavchar!NO11MUL1 1NULL1 1enroll_t ine11date!NO11

12、1NULL1 1leaue-tine11date!YES11 1NULL1 1scondition11e num學(xué)習(xí)I,結(jié)業(yè),退學(xué),!NO11MUL 1NULL1 1s_text1 1text!YES111 1NULL1 1-+11 rows in set 3. healthinfo 表 因為駕校體檢主要體檢身高/體重/視力/聽力/辮色能力/腿長和血壓信息.所以 heathinfo表中必須包含這些信息.身高/體重/左眼和石眼視力分別用height字 段/weight字段eft_sight字段和right.sight字段表示.因為這些數(shù)值有些 小數(shù),所以這些字段都定義成float類型.異色能力/

13、左耳聽力/石耳聽力/腿長 和血壓分別用differentiate字段/left_ear字段/right_ear字段/legs字段和 pressuer字段表示.這些字段的取值都是在特定幾個取值中取一個,因此定義成 enum類型.創(chuàng)建healthinfo表的SQL代碼如下:Create table healthinfo(Id int (8) primary key unique not unll auto.increment,Sno int (8) unique not null,Sname varchar (20) not null,Height float,Weight float,Diffe

14、rentiate enum(正常,色弱色盲),Left.sight float,Right_sight float,Left_ear enum (正常,偏弱),Right_ear enum (正常,偏弱),Legs enum(正常不相等),Pressure enum(正常J 偏高,偏低),History varchar(50),H_text text,Constraint health_fk foreign key(sno)References studentinfo(sno);創(chuàng)建healthinfo表時將sno字段設(shè)置為外鍵,而且外鍵的別名為health_fk,而 且,id字段加上了 au

15、to_increment屬性,這樣就可以將id字段設(shè)置為自增字段.表建好了后用desc語句查詢,如下:mysql desc healthinfo;_,_ _ _ _ _ _A 一T T ;Field ! Type:NullI 1Key;Default:ExtraT 一*一 一. 1 id1 int1 NOrmI NULLI xuto_inci*cnent ! eno! int! NO1 aUNIi NULL a! height1Float! YES1 1! NULL 11! weighta! Float! YES1 1! NULL1 1i! differentiate1! enum,正常I,色

16、弱,色盲,)! YES1 1! NULL1 11! left_sight ai Float! YES1 1! NULL 11! right_sight ! Float! YES1 1! NULL1 11! left_ear1;enum”正常I嘴弱,)! YES1 1! NULL1 1! right_ear1;enum正常,偏弱,! YES1 1! NULL1 1legs1;enum正常I,不相等,! YES1 ! NULL1 11! pi*essuer1! enum正常I,偏昌偏低,! YES1 1! NULL 11! history;uai,char(50! YES1 1! NULL1 1!

17、 h_text1! text! YES1 1! NULL1 11 +W-+一!-+13 ruv/s in set; mysql酷狗20124. courseinfo 表Courseinfo表用于存儲考試科目的信息,每個科目都必須有科目號/科目名稱. 這個表只需要3個字段就可以了, eno字段表示科目號,cname字段表示科目名 稱,before.cour字段表示先行考試的科目號.每條記錄中,只有before-cour字 段中存儲的科目考試通過后,學(xué)員才可以報考eno表示的科目. courseinfo表的 每個字段的信息如下字段名字段 描述數(shù)據(jù)類型主鍵外鍵非空唯一默認值自增Cno科目 號Int

18、(4)是否是是無否Cname科目 名稱Varchar(20)否否是是無否Before.cour先行科目Int(4)否否是否0否創(chuàng)建courseinfo表的sql代碼如下:Create table courseinfo(Cno int(4) primary key not null unique, Cname varchar(20) not null unique, Before_cour int(4) not null default 0 );Courseinfo表創(chuàng)建完成后用desc語句查詢,如下r)SFsql desc courseinf o ; +:Field:Type!Mull:Key

19、:Default : Extpa+:cno:int(4):NO:PRI:MULL:! cname!uapchar(20) !MO!UNI!MULL! bef!int(4)!MO!&!+4-4-4-3 iows in set Grade float default 0,Constraint grade_sno_fk foreign key (sno)References studentinfo(sno),Constraint grade_cno_fk foreign key (cno)References courseinfo(cno));代碼執(zhí)行后,在sn。字段被設(shè)置成外鍵,該外鍵的別名為gr

20、ade_sno_fk.同時,cno 字段也被設(shè)置成外鍵,改外鍵的別名為gradecno.fk.用desc語句查詢grade info表的結(jié)構(gòu)如下mysql desc gradeinfo;! Field! Type ! Null ! Key ! Default ! Extra! id!int8)!NO!PRI!NULL!auto_increnent ! sno!int!NO!MUL!NULL! enoint!NOMUL!NULL! last_time date;YES;NULL;! times;int;YES;1;! grade;float:YES:0;S6 rows in set 否否是否無否

21、Ino第駛征號VARCHAR(古在是爛無令receive lime領(lǐng)證時間DATE否否西否無否rcccivcnamc領(lǐng)證人VARC!1AR(2O)否否否狎無否Ltext備注TEXT否否否否無否創(chuàng)建licenseinfo表的sql代碼如下:Create table licenseinfo(Id int (8) primary key unique not null auto_increment,Sno int (8) unique not null,Sname varchar(20) not null,Lno varchar(18) unique not null,Receive-time da

22、te,Receive_name varchar(20),L_text text,Constraint license_fk foreign key (sno)References studentinfo(sno));Sno字段設(shè)置成外鍵,該外鍵的別名為license, liceseinfo表創(chuàng)建完成后, 使用desc語句查詢licenseinfo表的如構(gòu)如下mysql desc licenseinfo;! Field! Type! Null ! Key ! Default ! Extva!;id; int(8); NO S PRI ; NULL; auto_increment S! sno!

23、int8)! NO ! UNI ! NULL! sname! uai-char ! NO ! NULL!;ino; uarcharC18 ; NO 1 UNI ; NULL;S! receive_tine ! date! YES ! NULL! receive_nane ! uai*char ! YES ! NULL!;i_text; text; YES ; NULL;S? rows: in set 1. 在student info表上建立索引下面使用create index語句在sname初段上創(chuàng)建名為indexestu_name的索 引.sql代碼如下:Create index index_stu_name on studentinfo(sname);Create index index_car on studentinfo(car_type);使用alter table語句在scondition字段上創(chuàng)建名為index_con的索引.sql 代碼如下:Alter table studentinfo add

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論