![MySQL數(shù)據(jù)庫 2.1 數(shù)據(jù)庫的創(chuàng)建與數(shù)據(jù)表的開發(fā)教案_第1頁](http://file4.renrendoc.com/view11/M00/2B/11/wKhkGWeTYkuACXqhAAFVu3_V7cE302.jpg)
![MySQL數(shù)據(jù)庫 2.1 數(shù)據(jù)庫的創(chuàng)建與數(shù)據(jù)表的開發(fā)教案_第2頁](http://file4.renrendoc.com/view11/M00/2B/11/wKhkGWeTYkuACXqhAAFVu3_V7cE3022.jpg)
![MySQL數(shù)據(jù)庫 2.1 數(shù)據(jù)庫的創(chuàng)建與數(shù)據(jù)表的開發(fā)教案_第3頁](http://file4.renrendoc.com/view11/M00/2B/11/wKhkGWeTYkuACXqhAAFVu3_V7cE3023.jpg)
![MySQL數(shù)據(jù)庫 2.1 數(shù)據(jù)庫的創(chuàng)建與數(shù)據(jù)表的開發(fā)教案_第4頁](http://file4.renrendoc.com/view11/M00/2B/11/wKhkGWeTYkuACXqhAAFVu3_V7cE3024.jpg)
![MySQL數(shù)據(jù)庫 2.1 數(shù)據(jù)庫的創(chuàng)建與數(shù)據(jù)表的開發(fā)教案_第5頁](http://file4.renrendoc.com/view11/M00/2B/11/wKhkGWeTYkuACXqhAAFVu3_V7cE3025.jpg)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
教案首頁課程名稱MySQL數(shù)據(jù)庫開發(fā)本節(jié)課題任務(wù)2.1數(shù)據(jù)庫的創(chuàng)建與數(shù)據(jù)表的開發(fā)授課方式理實一體化教學(xué)參考及教具姜云橋主編.MySQL數(shù)據(jù)庫開發(fā).臨科院:教務(wù)處,2023計算機MySQL數(shù)據(jù)庫軟件多媒體教學(xué)系統(tǒng)資料包教學(xué)目標(biāo)及基本要求掌握創(chuàng)建數(shù)據(jù)庫方法掌握管理數(shù)據(jù)庫的方法掌握創(chuàng)建數(shù)據(jù)表的方法掌握管理數(shù)據(jù)表的方法能創(chuàng)建和管理數(shù)據(jù)庫能創(chuàng)建和管理表培養(yǎng)學(xué)生表達能力教學(xué)重點教學(xué)難點創(chuàng)建數(shù)據(jù)庫、創(chuàng)建數(shù)據(jù)表、管理數(shù)據(jù)庫、管理數(shù)據(jù)表創(chuàng)建和管理表教學(xué)小結(jié)作業(yè)及要求按照任務(wù)書做好預(yù)習(xí)任務(wù)創(chuàng)建和管理表教后反思
教案用紙教學(xué)內(nèi)容、方法和過程附記任務(wù)2.1數(shù)據(jù)庫的創(chuàng)建與數(shù)據(jù)表的開發(fā)導(dǎo)入:學(xué)院的教學(xué)系統(tǒng),可以查到那些數(shù)據(jù)?我們根據(jù)需求分析,要求創(chuàng)建學(xué)生、課程、教師和系部等數(shù)據(jù)表來存儲數(shù)據(jù)?!救蝿?wù)背景】 S學(xué)校要建立一個教學(xué)管理系統(tǒng)。根據(jù)需求分析,要求創(chuàng)建學(xué)生、課程、教師和系部等數(shù)據(jù)表來存儲數(shù)據(jù)。接下來,要建立數(shù)據(jù)庫,設(shè)計數(shù)據(jù)表的結(jié)構(gòu),并初始化相關(guān)表數(shù)據(jù)?!救蝿?wù)要求】本任務(wù)將學(xué)習(xí)創(chuàng)建和管理數(shù)據(jù)庫、創(chuàng)建和管理表。在任務(wù)實施過程中,要特別注意表的規(guī)范化,要注意數(shù)據(jù)類型的正確選擇,還要注意數(shù)據(jù)庫和數(shù)據(jù)表字符集的統(tǒng)一問題。【任務(wù)必備知識】2.1.1創(chuàng)建數(shù)據(jù)庫的語句 使用CREATEDATABASE或CREATESCHEMA命令可以創(chuàng)建數(shù)據(jù)庫。 其語法結(jié)構(gòu)如下。CREATEDATABASE[IFNOTEXISTS]db_name;【任務(wù)2.1】創(chuàng)建數(shù)據(jù)庫test1。mysql>CREATEDATABASE[IFNOTEXISTS]test1;【任務(wù)2.2】創(chuàng)建數(shù)據(jù)庫test2庫,并指定字符集為gb2312。mysql>CREATEDATABASETEST2。 DEFAULTCHARACTERSETgb2312。 COLLATEgb2312_chinese_ci。分析與討論(1)DEFAULTCHARACTERSET:指定數(shù)據(jù)庫的默認(rèn)字符集(Charset),charset_name為字符集名稱。COLLATE:指定字符集的校對規(guī)則,collation_name為校對規(guī)則名稱。(2)創(chuàng)建數(shù)據(jù)庫時最好指定字符集。(3)IFNOTEXISTS:如果已存在某個數(shù)據(jù)庫,再來創(chuàng)建一個同名的庫,這時會出現(xiàn)錯誤信息。為避免錯誤信息,可以在建庫前加上這一判斷,只有該庫目前尚不存在時才執(zhí)行CREATEDATABASE操作。2.1.2查看庫用SHOWDATABASES命令查看,輸出結(jié)果如圖2.1所示。圖2.1運行結(jié)果創(chuàng)建數(shù)據(jù)庫并不表示選定并使用它,必須明確地操作。為了使test1成為當(dāng)前的數(shù)據(jù)庫,使用如下命令。 mysql>Usetest1;2.1.3修改庫數(shù)據(jù)庫創(chuàng)建后,如果需要修改數(shù)據(jù)庫的參數(shù),可以使用ALTERDATABASE命令?!救蝿?wù)2.3】將test1庫修改字符集為gb2312,校對原則為gb2312_chinese_cimysql>ALTER
DATABASE
test1
DEFAULT
CHARACTER
SET
gb2312
COLLATE
gb2312_chinese_cimysql>ALTER
DATABASE
jxgl
DEFAULT
CHARACTER
SET
gb2312
COLLATE
gb2312_chinese_ci2.1.4刪除庫已經(jīng)創(chuàng)建的數(shù)據(jù)庫,如果需要刪除,可使用DROPDATABASE命令。語法格式: DROPDATABASE[IFEXISTS]db_name【任務(wù)2.4】刪除test1庫。mysql>DROPDATABASEtest1;特別要注意,刪除了數(shù)據(jù)庫,數(shù)據(jù)庫里的所有表也同時被刪除。因此,最好先對數(shù)據(jù)庫做好備份,然后再執(zhí)行刪除操作。學(xué)習(xí)行動1創(chuàng)建數(shù)據(jù)庫JXGL設(shè)置庫字符集為gb2312校對原則為gb2312_chinese_ci查看mysql>CREATEDATABASEJXGL DEFAULTCHARACTERSETgb2312 COLLATEgb2312_chinese_ci2.2創(chuàng)建與管理表數(shù)據(jù)庫創(chuàng)建之后,數(shù)據(jù)庫是空的,是沒有表的,可以用SHOWTABLES命令查看。mysql>SHOWTABLES; Emptyset(0.00sec)2.2.1創(chuàng)建表表決定了數(shù)據(jù)庫的結(jié)構(gòu),表是存放數(shù)據(jù)的地方,一個庫需要什么表,各數(shù)據(jù)庫表中有什么樣的列,是要合理設(shè)計的。創(chuàng)建表的語法如下。教學(xué)示例數(shù)據(jù)庫為學(xué)生管理系統(tǒng)(JXGL),在這個庫中要設(shè)計6張表:STUDENTS(學(xué)生信息表)、course(課程表)、score(成績表)、departments(院系單位表)、teachers(教師表)和teach(講授表)?!救蝿?wù)2.5】創(chuàng)建表teachers。表2.5teachersmysql>createtableifnotexiststeacher->(->t_no char(6)primarykeycomment'教師編號',->t_name varchar(20) comment'教師姓名',->d_no char(4) comment'院系編號'->);分析與討論(1)關(guān)于設(shè)置主鍵。PRIMARYKEY表示設(shè)置該字段為主鍵。如在STUDENTS表中,PRIMARYKEY(s_no)表示將s_no字段定義為主鍵。(2)添加注釋。COMMENT'學(xué)號'表示對“s_no”字段增加注釋為“學(xué)號”。(3)如果沒有指定是NULL或是NOTNULL,則列在創(chuàng)建時假定為NULL。【任務(wù)2.6】創(chuàng)建表departments。mysql>CREATETABLEIFNOTEXISTSdepartments D_NOchar(8)NOTNULLCOMMENT'院系編號', D_NAMEchar(8)NOTNULLCOMMENT'院系名稱', PRIMARYKEY(D_NO) ENGINE=InnoDBDEFAULTCHARSET=gb2312;【任務(wù)2.7】創(chuàng)建表STUDENTS。mysql>CREATETABLEIFNOTEXISTSSTUDENTS s_nochar(4)NOTNULLCOMMEN'學(xué)號', s_namechar(4)NOTNULLCOMMENT'姓名',sexENUM('男','女')DEFAULT'男'COMMENT'性別', birthdaydateNOTNULLCOMMENT'出生日期', d_novarchar(4)NOTNULLCOMMENT'所在系部',addressvarchar(20)NOTNULLCOMMENT'家庭地址', phonevarchar(12)NOTNULLCOMMENT'聯(lián)系電話', photoblobCOMMENT'照片', PRIMARYKEY(s_no)ENGINE=InnoDBDEFAULTCHARSET=gb2312;【任務(wù)2.8】創(chuàng)建表course。mysql>CREATETABLEIFNOTEXISTScourse c_nochar(4)NOTNULL, c_namechar(10)NOTNULL, d_nochar(10)NOTNULL,hoursint(11)NOTNULL, creditint(11)NOTNULL, typeEMUN('必修課','選修課')DEFAULT'必修課', PRIMARYKEY(c_no) ENGINE=InnoDBDEFAULTCHARSET=gb2312;【任務(wù)2.9】創(chuàng)建表score。mysql>CREATETABLEIFNOTEXISTSscore s_nochar(8)NOTNULL, c_nochar(4)NOTNULL, reportfloat(3,1)DEFAULT0, PRIMARYKEY(s_no,c_no)ENGINE=InnoDBDEFAULTCHARSET=gb2312;【任務(wù)2.10】創(chuàng)建表teach。mysql>CREATETABLEIFNOTEXISTSteach t_novarchar(8)NOTNULL, c_novarchar(8)NOTNULL, KEYt_no(t_no), KEYc_no(c_no)ENGINE=InnoDBDEFAULTCHARSET=gb2312;分析與討論(1)關(guān)于設(shè)置主鍵。PRIMARYKEY表示設(shè)置該字段為主鍵。如在STUDENTS表中,PRIMARYKEY(s_no)表示將s_no字段定義為主鍵。在score表中,PRIMARYKEY(s_no,c_no)表示把s_no、c_no兩個字段一起作為復(fù)合主鍵。(2)添加注釋。COMMENT'學(xué)號'表示對“s_no”字段增加注釋為“學(xué)號”。(3)字段類型的選擇。SEXENUM('男','女')表示sex字段的字段類型是ENUM,取值范圍為'男'和'女'。對于取值固定的字段可以設(shè)置數(shù)據(jù)類型為ENUM。例如,在course表的type字段表示的是課程的類型,一般是固定的幾種類型。因此,可以把該字段的定義寫成:typeENUM('必修課',‘選修課')DEFAULT'必修課'。(4)默認(rèn)值的設(shè)置。DEFAULT'男'表示默認(rèn)值為“男”。(5)設(shè)置精度。Score表中的reportfloat(5,1)表示精度為6,小數(shù)位1位。(6)“ENGINE=InnoDB”表示采用的存儲引擎是InnoDB,InnoDB是MySQL在Windows平臺默認(rèn)的存儲引擎,所以“ENGINE=InnoDB”可以省略。(7)DEFAULTCHARSET=gb2312表示表的字符集是gb2312。(8)如果沒有指定是NULL或是NOTNULL,則列在創(chuàng)建時假定為NULL。(9)設(shè)置自動增量。一個整數(shù)列可以擁有一個附加屬性AUTO_INCREMENT。AUTO_INCREMENT序列從一般1開始,也可以自定義開始值。這樣的列必須被定義為一種整數(shù)類型??梢酝ㄟ^AUTO_INCREMENT屬性為新的行產(chǎn)生唯一的標(biāo)識。2.2.2查看表創(chuàng)建了數(shù)據(jù)表后,現(xiàn)在再用SHOWTABLES查詢已創(chuàng)建的表的情況。mysql>SHOWTABLES; 輸出結(jié)果如圖2.2所示。圖2.2運行結(jié)果用命令查看teachers的結(jié)構(gòu)。 mysql>DESCteachers; 程序執(zhí)行結(jié)果如圖2.2.3修改表ALTERTABLE用于更改原有表的結(jié)構(gòu)。例如,可以增加或刪減列、重新命名列或表,還可以修改默認(rèn)字符集?!救蝿?wù)2.12】在STUDENTS表的photo列后面增加一列speciality。mysql>ALTER
TABLE
STUDENTS ADD
speciality
VARCHAR(5)
NOT
NULL
AFTER
photo;【任務(wù)2.13】給STUDENTS表的birthday列后增加一列“入學(xué)日期”,并定義其默認(rèn)值為'2015-9-11'。mysql>ALTERTABLESTUDENTS ADD`入學(xué)日期`dateNOTNULLDEFAULT'2015-9-11'AFTERbirthday;mysql>ALTERTABLESTUDENTSADD入學(xué)日期dateNOTNULLDEFAULT'2015-9-11'AFTERbirthday【任務(wù)2.14】修改表STUDENTS的sex列的默認(rèn)值為女。mysql>altertablestudentschangesex`性別`char(2)notnulldefault'女';altertablestudentschangesexsexchar(2)notnulldefault'女';altertablestudentschangesex`性別`char(2)notnulldefault'女';【任務(wù)2.15】刪除STUDENTS表的入學(xué)日期列的默認(rèn)值。ALTERTABLESTUDENTSALTER`入學(xué)日期`DROPDEFAULT;ALTERTABLESTUDENTSALTER`入學(xué)日期`DROPDEFAULT;【任務(wù)2.16】將表STUDENTS重名為學(xué)生表。mysql>ALTERTABLESTUDENTSrename‘學(xué)生表’;ALTERTABLESTUDENTSrename‘學(xué)生表’【任務(wù)2.17】修改course表的字符集為utf8。altertablecourseconverttocharactersetutf8collateutf8_general_cialtertablecourseconverttocharactersetutf8collateutf8_general_ci2.2.4復(fù)制表可以通過CREATETABLE命令復(fù)制表的結(jié)構(gòu)和數(shù)據(jù)。語法格式: CREATE[TEMPORARY]TABLE[IFNOTEXISTS]tbl_name [()LIKEold_tbl_name[]] |[AS(select_statement)] ;【任務(wù)2.18】創(chuàng)建一個表STUDENTS的附表STUDENTS1。mysql>CREATETABLESTUDENTS1LIKE學(xué)生表;CREATETABLESTUDENTS1LIKE學(xué)生表【任務(wù)2.19】用命令查看STUDENTS1的結(jié)構(gòu)。 mysql>DESCSTUDENTS1; 程序執(zhí)行結(jié)果如圖【任務(wù)2.20】復(fù)制表STUDENTS的結(jié)構(gòu)和數(shù)據(jù),
溫馨提示
- 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)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 醫(yī)藥冷鏈運輸服務(wù)合同
- 建筑工程人才中介合同
- 花店翻新墊資合同
- 行業(yè)專項作業(yè)指南 財務(wù)管理基礎(chǔ)
- 經(jīng)營用房租租賃合同書
- 印刷合同協(xié)議書
- 門衛(wèi)臨時聘用合同
- 軟件開發(fā)流程優(yōu)化與項目管理體系建立指南
- 員工離職后保密協(xié)議
- 購房協(xié)議和購房合同
- 五年級上冊口算練習(xí)400題及答案
- 關(guān)于闖紅燈的調(diào)查報告
- 決策與博弈論課件
- 為什么偉大不能被計劃
- 人大代表履職知識講座
- 精神障礙患者的社交技巧訓(xùn)練
- 危險物品管理制度
- 門靜脈炎護理課件
- 重慶八中2024屆高三12月高考適應(yīng)性月考卷(四) 語文試卷(含答案)
- 基礎(chǔ)研究成果向臨床轉(zhuǎn)化的實踐與挑戰(zhàn)
- 電流互感器試驗報告
評論
0/150
提交評論