版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、數(shù)據(jù)庫原理及應(yīng)用實(shí)驗(yàn)報(bào)告實(shí)驗(yàn)課程: 數(shù)據(jù)庫原理及應(yīng)用 學(xué) 號(hào): 2012044543003 學(xué)生姓名: 陳洪波 班 級(jí): 12通信工程1班 2015年 4 月 22 日實(shí)驗(yàn)一 創(chuàng)建和維護(hù)數(shù)據(jù)庫一、實(shí)驗(yàn)?zāi)康模?)掌握在Windows 平臺(tái)下安裝與配置MySQL 5.5 的方法。(2)掌握啟動(dòng)服務(wù)并登錄MySQL 5.5 數(shù)據(jù)庫的方法和步驟。(3)了解手工配置MySQL 5.5 的方法。(4)掌握MySQL 數(shù)據(jù)庫的相關(guān)概念。(5)掌握使用Navicat 工具和SQL 語句創(chuàng)建數(shù)據(jù)庫的方法。(6)掌握使用Navicat 工具和SQL 語句刪除數(shù)據(jù)庫的方法。二、實(shí)驗(yàn)要求(1)學(xué)生提前準(zhǔn)備好實(shí)驗(yàn)報(bào)告,
2、預(yù)習(xí)并熟悉實(shí)驗(yàn)步驟;(2)遵守實(shí)驗(yàn)室紀(jì)律,在規(guī)定的時(shí)間內(nèi)完成要求的內(nèi)容;(3)12人為1小組,實(shí)驗(yàn)過程中獨(dú)立操作、相互學(xué)習(xí)。三、實(shí)驗(yàn)內(nèi)容及步驟(1)在Windows 平臺(tái)下安裝與配置MySQL 5.5.36 版。進(jìn)入到下載頁面,沒看到5.5.36的版本,就選擇了32位的5.5.43版本的來安裝(2)在服務(wù)對(duì)話框中,手動(dòng)啟動(dòng)或者關(guān)閉MySQL 服務(wù)。(3)使用Net 命令啟動(dòng)或關(guān)閉MySQL 服務(wù)。(4)分別用Navicat 工具和命令行方式登錄MySQL。下面用Nacicat工具登錄Mysql,連接測試成功的頁面如下:登錄成功的頁面截圖如下:運(yùn)用行命令方式登錄成功的頁面如下:(5)在my.in
3、i 文件中將數(shù)據(jù)庫的存儲(chǔ)位置改為D:MYSQLDATA。步驟總共有四步: 停止Mysql服務(wù) 打開MySQL默認(rèn)的安裝文件夾C:Program FilesMySQLMySQL Server 5.1中的my.ini文件,點(diǎn)擊記事本頂部的“編輯”,“查找”,在查找內(nèi)容中輸入datadir后并點(diǎn)擊“查找下一個(gè)”轉(zhuǎn)到“Path to the database root數(shù)據(jù)庫存儲(chǔ)主路徑”參數(shù)設(shè)置,找到datadir=C:/Documents and Settings/All Users/Application Data/MySQL/MySQL Server 5.1/Data/即是默認(rèn)的數(shù)據(jù)庫存儲(chǔ)主路徑設(shè)
4、置,現(xiàn)將它改到D:MYSQLDATA即可,正確的設(shè)置是datadir=D:MYSQLDATA。將老的數(shù)據(jù)庫存儲(chǔ)主路徑中的數(shù)據(jù)庫文件和文件夾復(fù)制到新的存儲(chǔ)主路徑重新啟動(dòng)MYSQL服務(wù),這樣子數(shù)據(jù)庫的存儲(chǔ)路徑就完成了。(6)創(chuàng)建數(shù)據(jù)庫。 使用Navicat 創(chuàng)建學(xué)生信息管理數(shù)據(jù)庫gradem。 使用SQL 語句創(chuàng)建數(shù)據(jù)庫MyDB。語句截圖如下:(7)查看數(shù)據(jù)庫屬性。 在Navicat 中查看創(chuàng)建后的gradem 數(shù)據(jù)庫和MyDB 數(shù)據(jù)庫的狀態(tài),查看數(shù)據(jù)庫所在的文件夾。 利用SHOW DATABASES 命令顯示當(dāng)前的所有數(shù)據(jù)庫。(8)刪除數(shù)據(jù)庫。 使用Navicat 圖形工具刪除gradem 數(shù)據(jù)
5、庫。 使用SQL 語句刪除MyDB 數(shù)據(jù)庫。 利用SHOW DATABASES 命令顯示當(dāng)前的所有數(shù)據(jù)庫。(9)使用配置向?qū)薷漠?dāng)前密碼,并使用新密碼重新登錄。(10)配置Path 變量,確保MySQL 的相關(guān)路徑包含在Path 變量中。四、思考題My SQL的數(shù)據(jù)庫文件有幾種?擴(kuò)展名分別是什么?答:一個(gè)格式文件-.frm,一個(gè)數(shù)據(jù)文件-.isd,一個(gè)索引文件-.isd。五、實(shí)驗(yàn)總結(jié)1、收獲答:(1)在這次的實(shí)驗(yàn)過程中學(xué)習(xí)到了Mysql的安裝過程和基本的配置,基本了解了用圖形化工具Navicat和用SQL語言來刪除以及創(chuàng)建數(shù)據(jù)庫的方法。(2)熟練掌握了數(shù)據(jù)庫啟動(dòng)的步驟和方法,通過查閱資料深刻認(rèn)
6、識(shí)到了數(shù)據(jù)庫的強(qiáng)大功能,易于管理的特點(diǎn)對(duì)人們平時(shí)工作處理一些數(shù)據(jù)表格的幫助非常巨大。2、存在的問題答:還不能熟練地記住一些SQL語句,接下來得在這一方面下多點(diǎn)功夫。實(shí)驗(yàn)二 管理表一、實(shí)驗(yàn)?zāi)康?1) 掌握表的基礎(chǔ)知識(shí)。(2) 掌握使用Navicat管理工具和SQL語句創(chuàng)建表的方法。(3) 掌握表的修改、查看、刪除等基本操作方法。二、實(shí)驗(yàn)要求(1)學(xué)生提前準(zhǔn)備好實(shí)驗(yàn)報(bào)告,預(yù)習(xí)并熟悉實(shí)驗(yàn)步驟;(2)遵守實(shí)驗(yàn)室紀(jì)律,在規(guī)定的時(shí)間內(nèi)完成要求的內(nèi)容;(3)12人為1小組,實(shí)驗(yàn)過程中獨(dú)立操作、相互學(xué)習(xí)。三、實(shí)驗(yàn)內(nèi)容及步驟(1)在gradem數(shù)據(jù)庫中創(chuàng)建表4.18表4.22所示結(jié)構(gòu)的表。表4.18 stude
7、nt表的表結(jié)構(gòu)字段名稱數(shù)據(jù)類型長度小數(shù)位數(shù)是否允許NULL值說明snochar10否主碼snamevarchar8是ssexchar2是sbirthdaydatetime是saddressvarchar50是sdeptchar16是specialityvarchar20是表4.19 course表(課程名稱表)的表結(jié)構(gòu)字段名稱數(shù)據(jù)類型長度小數(shù)位數(shù)是否允許NULL值說明cnochar5否主碼cnamevarchar20否表4.20 sc表(成績表)的表結(jié)構(gòu)字段名稱數(shù)據(jù)類型長度小數(shù)位數(shù)是否允許NULL值說明snochar10否組合主碼、外碼cnochar5否組合主碼、外碼degreedecimal
8、41是1100表4.21 teacher表(教師表)的表結(jié)構(gòu)字段名稱數(shù)據(jù)類型長度小數(shù)位數(shù)是否允許NULL值說明tnochar3否主碼tnamevarchar8是tsexchar2是tbirthdaydate是tdeptchar16是表4.22 teaching表(授課表)的表結(jié)構(gòu)字段名稱數(shù)據(jù)類型長度小數(shù)位數(shù)是否允許NULL值說明cnochar5否組合主碼、外碼tnochar3否組合主碼、外碼ctermtinyint10是110 (2) 向表4.18至表4.22輸入數(shù)據(jù)記錄,見表4.23表4.27。表4.23 學(xué)生關(guān)系表studentsnosnamessexsbirthdaysaddresssd
9、eptspeciality20050101李勇男1987-01-12山東濟(jì)南計(jì)算機(jī)工程系計(jì)算機(jī)應(yīng)用20050201劉晨女1988-06-04山東青島信息工程系電子商務(wù)20050301王敏女1989-12-23江蘇蘇州數(shù)學(xué)系數(shù)學(xué)20050202張立男1988-08-25河北唐山信息工程系電子商務(wù)表4.24 課程關(guān)系表coursecnocnamecnocnameC01數(shù)據(jù)庫C03信息系統(tǒng)C02數(shù)學(xué)C04操作系統(tǒng) 表4.25 成績表scsnocnodegree20050101C019220050101C028520050101C038820050201C029020050201C0380 表4.26
10、 教師表teachertnotnametsextbirthdaytdept101李新男1977-01-12計(jì)算機(jī)工程系102錢軍女1968-06-04計(jì)算機(jī)工程系201王小花女1979-12-23信息工程系202張小青男1968-08-25信息工程系 表4.27 授課表teachingcnotnoctermC011012C021021C032013C042024 (3) 修改表結(jié)構(gòu)。 向student表中增加“入學(xué)時(shí)間”列,其數(shù)據(jù)類型為日期時(shí)間型。直接添加一個(gè)欄位,然后再進(jìn)行相應(yīng)的參數(shù)約束。 將student表中的sdept字段長度改為20。 直接在navicat的設(shè)計(jì)表里面改再保存就可以了。
11、 將student表中的speciality字段刪除。直接在圖形工具里面刪除整個(gè)欄位再保存就可以了 刪除student表。(4) 利用SQL命令(create table、alter table、drop table)完成對(duì)表的操作利用create talbe 命令完成student表和course表的定義。Student表的定義如下:Use gradem Creat table student(sno char(10) primary key,Sname char(8),Ssex char(2),sbirthday ,Saddress char(50),Sdept char(16),Spec
12、iaity varchar(20);Course表格的定義代碼如下;Use gradem Creat table course(cno char(5) primary key,cname char(20);利用drop table命令實(shí)現(xiàn)(3)中的。Drop table student;四、思考題 (1) MySQL中的數(shù)據(jù)庫文件有幾種?擴(kuò)展名分別是什么?答:數(shù)據(jù)庫文件- .mdf,次數(shù)據(jù)文件- .ndf,日志文件- .ldf(2) 在定義基本表語句時(shí),NOT NULL參數(shù)的作用是什么?答:設(shè)置列的分量不為空值(3) 主碼可以建立在“值可以為NULL”的列上嗎?答:不行。五、實(shí)驗(yàn)總結(jié):1、收獲
13、答:學(xué)會(huì)了在圖形工具navicat里面建立表格跟輸入數(shù)據(jù)的基本操作,在命令窗口會(huì)使用SQL語句查詢已建好的表格的各種信息。2、存在的問題實(shí)驗(yàn)三 簡單查詢單表無條件和有條件查詢一、實(shí)驗(yàn)?zāi)康?1) 掌握SELECT語句的基本用法。(2) 使用WHERE子句進(jìn)行有條件的查詢。(3) 掌握使用IN和NOT IN,BETWEENAND和NOT BETWEENAND來縮小查詢范圍的方法。(4) 利用LIKE子句實(shí)現(xiàn)字符串匹配查詢。二、實(shí)驗(yàn)要求1、學(xué)生提前準(zhǔn)備好實(shí)驗(yàn)報(bào)告,預(yù)習(xí)并熟悉實(shí)驗(yàn)步驟;2、遵守實(shí)驗(yàn)室紀(jì)律,在規(guī)定的時(shí)間內(nèi)完成要求的內(nèi)容;3、12人為1小組,實(shí)驗(yàn)過程中獨(dú)立操作、相互學(xué)習(xí)。三、實(shí)驗(yàn)內(nèi)容及步驟
14、在上次實(shí)驗(yàn)建立的Gradem或Gradem1數(shù)據(jù)庫中完成下面查詢:(1) 查詢所有學(xué)生的基本信息、所有課程的基本信息和所有學(xué)生的成績信息(用三條SQL語句)。學(xué)生的基本信息:select * from student;所有課程的基本信息:select * from course;所有學(xué)生的成績信息:select degree from student;(2) 查詢所有學(xué)生的學(xué)號(hào)、姓名、性別和出生日期。Select sno,sname,sbirthday from student;(3) 查詢所有課程的課程名稱。Select cname from course;(4) 查詢前10門課程的課號(hào)及課
15、程名稱。Select cno,cname from student limit 10;(5) 查詢所有學(xué)生的姓名及年齡。Select sname,sage from student;(6) 查詢所有年齡大于18歲的女生的學(xué)號(hào)和姓名。Select sno,sname from studentWhere sage18;(7) 查詢所有男生的信息。Select * from studentWhere ssex=男;(8) 查詢所有任課教師的姓名(Tname)和所在系別(Tdept)。Select tname,tdept from teacher;(9) 查詢“電子商務(wù)”專業(yè)的學(xué)生姓名、性別和出生日期
16、。Select sname,ssex,sbirthday from studentWhere speciality=電子商務(wù);(10) 查詢Student表中的所有系名。Select sdept from student;(11) 查詢“C01”課程的開課學(xué)期。Select cterm from teachingWhere cno in(C01);(12) 查詢成績?cè)?090分之間的學(xué)生學(xué)號(hào)及課號(hào)。Select sno,cno from scWhere degree 80 and degree 90;(13) 查詢?cè)?970年1月1日之前出生的男教師信息。Select * from teach
17、erWhere tsex=男 and tbirthday1970;(14) 輸出有成績的學(xué)生學(xué)號(hào)。Select sno from sc where degree in not null;(15) 查詢所有姓“劉”的學(xué)生信息。Select * from student where sname regexp劉;(16) 查詢生源地不是山東省的學(xué)生信息。Select * from student where not saddress=山東青島 and sadress=山東濟(jì)南;(17) 查詢成績?yōu)?9分、89分或99分的記錄。(18) 查詢名字中第二個(gè)字是“小”字的男生的學(xué)生姓名和地址。Select
18、 sname,saddress from student where sname like _小%;(19) 查詢名稱以“計(jì)算機(jī)_”開頭的課程名稱。Select speciality from student where sdept regexp 計(jì)算機(jī);(20) 查詢計(jì)算機(jī)工程系和軟件工程系的學(xué)生信息。Select * from student where sdept =計(jì)算機(jī)工程系 and sdept=軟件工程系;四、思考題1、LIKE的通配符有哪些?分別代表什么含義?答:有四種。%:代表任意長度的字符串,_:代表一個(gè)任意的字符,:表示指定范圍內(nèi)任意單個(gè)字符,:表示不指定范圍內(nèi)任意單個(gè)字符
19、2、知道學(xué)生的出生日期,如何求出其年齡?答:datediff(year,數(shù)據(jù)庫里的時(shí)間段,getdate() 就是當(dāng)前時(shí)間減去數(shù)據(jù)庫里的時(shí)間得到年。3、IS能用“=”來代替嗎?4、關(guān)鍵字ALL和DISTINCT有什么不同的含義?答:ALL表示所有的字段,有重復(fù)的字段,都顯示,DISTINCT表示如果有重復(fù)的,只取一條,過濾掉重復(fù)的字段。四、實(shí)驗(yàn)總結(jié):1、收獲從學(xué)習(xí)可以知道:數(shù)據(jù)庫的內(nèi)容是從數(shù)據(jù)表的創(chuàng)建和修改開始的,數(shù)據(jù)表的建立關(guān)系數(shù)據(jù)庫的基本結(jié)構(gòu),它用來存儲(chǔ)數(shù)據(jù)已經(jīng)定義的屬性,在數(shù)據(jù)表的操作中有:查看表的信息,查看表的屬性,修改表中的數(shù)據(jù),刪除表中的數(shù)據(jù)以及修改、刪除表的操作。從學(xué)習(xí)和實(shí)驗(yàn)報(bào)告
20、的完成過程中我了解到,表是數(shù)據(jù)庫數(shù)據(jù)中重要的一個(gè)數(shù)據(jù)對(duì)象,表建立的好壞直接影響到數(shù)據(jù)庫的使用效果,表中的內(nèi)容越具體對(duì)表越有利,然后對(duì)數(shù)據(jù)庫中的各種應(yīng)用也有著各種各樣的便利。2、存在的問題實(shí)驗(yàn)四 簡單查詢分組與排序一、實(shí)驗(yàn)?zāi)康模?1) 利用GROUP BY子句對(duì)查詢結(jié)果分組。(2) 利用ORDER BY子句對(duì)查詢結(jié)果排序。(3) 掌握聚集函數(shù)的使用方法。二、實(shí)驗(yàn)要求1、學(xué)生提前準(zhǔn)備好實(shí)驗(yàn)報(bào)告,預(yù)習(xí)并熟悉實(shí)驗(yàn)步驟;2、遵守實(shí)驗(yàn)室紀(jì)律,在規(guī)定的時(shí)間內(nèi)完成要求的內(nèi)容;3、12人為1小組,實(shí)驗(yàn)過程中獨(dú)立操作、相互學(xué)習(xí)。三、實(shí)驗(yàn)內(nèi)容及步驟在Gradem或Gradem1數(shù)據(jù)庫中完成下面查詢:(1) 統(tǒng)計(jì)有學(xué)
21、生選修的課程的門數(shù)。 (2) 計(jì)算“c01”課程的平均成績。(3) 查詢選修了“c03”課程的學(xué)生的學(xué)號(hào)及其成績,查詢結(jié)果按分?jǐn)?shù)降序排列。(4) 查詢各個(gè)課程號(hào)及相應(yīng)的選課人數(shù)。(5) 統(tǒng)計(jì)每門課程的選課人數(shù)和最高分。(6) 統(tǒng)計(jì)每個(gè)學(xué)生的選課門數(shù)和考試總成績,并按選課門數(shù)降序排列。(7) 查詢選修了3門以上課程的學(xué)生學(xué)號(hào)。(8) 查詢成績不及格的學(xué)生學(xué)號(hào)及課號(hào),并按成績降序排列。(9) 查詢至少選修一門課程的學(xué)生學(xué)號(hào)。(10) 統(tǒng)計(jì)輸出各系學(xué)生的人數(shù)(11) 統(tǒng)計(jì)各系學(xué)生人數(shù);各系的男、女生人數(shù)。(兩條命令)(12) 統(tǒng)計(jì)各班人數(shù);各班男、女生人數(shù)。(兩條命令)(13) 統(tǒng)計(jì)各系的老師人數(shù),
22、并按人數(shù)升序排序。(14) 統(tǒng)計(jì)不及格人數(shù)超過10人的課程號(hào)。統(tǒng)計(jì)選修人數(shù)超過10人的課程號(hào)。(15) 查詢軟件系的男生信息,查詢結(jié)果按出生日期升序排序,出生日期相同的按地址降序排序。三、思考題(1) 聚集函數(shù)能否直接使用在SELECT子句、HAVING子句、WHERE子句、GROUP BY子句中?答:可以使用在SELECT子句跟HAVING子句中,不可用在WHERE子句跟GROUP BY子句中。 (2) WHERE子句與HAVING子句有何不同?答:作用對(duì)象不同,WHERE子句作用于表和視圖,HAVING子句作用于組。四、實(shí)驗(yàn)總結(jié):1、收獲通過本次實(shí)驗(yàn)使我更加了解一些常用的SQL語句:查詢語句:select,添加語句:INSERT,刪除語句:DELETE等,簡單掌握了怎么給表分組以及表的排序查詢。有些不太會(huì)的題目通過跟同學(xué)交流以及上網(wǎng)查詢資料,基本都得到了解決,總的來說通過實(shí)驗(yàn)還能發(fā)現(xiàn)自己的不足之處,可以通過查缺補(bǔ)漏,印象會(huì)比較深刻。2、存在的問題一些查詢語句的使用還不熟練,應(yīng)該在以后多加練習(xí),這樣子才能更好地掌握這門語言的基本知識(shí)。實(shí)驗(yàn)五、六、七 多表查詢一、實(shí)驗(yàn)?zāi)康?1) 掌握SELECT語句在多表查詢中的應(yīng)用。(2) 掌握多表連接的幾種連接方式及應(yīng)用。二、實(shí)驗(yàn)要求1、學(xué)生提前準(zhǔn)備好實(shí)驗(yàn)報(bào)告,預(yù)習(xí)并熟悉實(shí)驗(yàn)步驟;2、遵守實(shí)驗(yàn)室紀(jì)律
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024-2030年全球聚天冬氨酸行業(yè)發(fā)展趨勢及投資價(jià)值研究報(bào)告版
- 2024-2030年全球及中國超聲波動(dòng)物驅(qū)避器行業(yè)發(fā)展態(tài)勢及投資前景預(yù)測報(bào)告
- 2024-2030年全球及中國管道機(jī)器人檢測攝像機(jī)行業(yè)現(xiàn)狀動(dòng)態(tài)及投資盈利預(yù)測報(bào)告
- 2024-2030年全球及中國熱鹵食品行業(yè)銷售模式及競爭趨勢預(yù)測報(bào)告
- 2024-2030年全球及中國汽車取力器(PTO)行業(yè)銷售策略及供需前景預(yù)測報(bào)告
- 2024-2030年全球及中國塑料捆扎封口器材行業(yè)需求動(dòng)態(tài)及前景趨勢預(yù)測報(bào)告
- 2024-2030年全球及中國可持續(xù)再生纖維行業(yè)運(yùn)營動(dòng)態(tài)及盈利前景預(yù)測報(bào)告
- 2024-2030年全球及中國制刷機(jī)行業(yè)應(yīng)用前景及投資戰(zhàn)略研究報(bào)告
- 2024-2030年全球及中國2甲基4苯基1H茚行業(yè)產(chǎn)銷狀況及需求規(guī)模預(yù)測報(bào)告
- 2024-2030年中國高空作業(yè)車行業(yè)運(yùn)營情況及需求態(tài)勢分析報(bào)告
- 新產(chǎn)品試制流程管理辦法
- 通用橫版企業(yè)報(bào)價(jià)單模板
- 潛油泵及潛油泵加油機(jī)講義
- 物業(yè)服務(wù)公司各崗位規(guī)范用語
- 醫(yī)患溝通內(nèi)容要求記錄模板(入院、入院三日、術(shù)前、術(shù)后、出院)
- 航海學(xué)天文定位第四篇第6章天文定位
- 淺談深度教學(xué)中小學(xué)數(shù)學(xué)U型學(xué)習(xí)模式
- 物理電學(xué)暗箱專題30道
- 裝修公司員工勞動(dòng)合同
- 江西上饒鉛山汽車駕駛科目三考試線路
- 通過一起放火案件淺析放火案件的移交工作
評(píng)論
0/150
提交評(píng)論