數(shù)據(jù)庫應(yīng)用技術(shù)實(shí)驗(yàn)報(bào)告_第1頁
數(shù)據(jù)庫應(yīng)用技術(shù)實(shí)驗(yàn)報(bào)告_第2頁
數(shù)據(jù)庫應(yīng)用技術(shù)實(shí)驗(yàn)報(bào)告_第3頁
數(shù)據(jù)庫應(yīng)用技術(shù)實(shí)驗(yàn)報(bào)告_第4頁
數(shù)據(jù)庫應(yīng)用技術(shù)實(shí)驗(yàn)報(bào)告_第5頁
已閱讀5頁,還剩3頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、數(shù)據(jù)庫應(yīng)用技術(shù) 實(shí)驗(yàn)一 一、 實(shí)驗(yàn)?zāi)康募耙?、 學(xué)會定義數(shù)據(jù)類型、聲明局部變量的方法;2、 學(xué)會批處理和流程控制語句的使用方法;3、 了解系統(tǒng)數(shù)據(jù)庫的作用;4、 學(xué)會用對象資源管理器中創(chuàng)建用戶數(shù)據(jù)庫;5、 學(xué)會SQL編輯器創(chuàng)建用戶數(shù)據(jù)庫;6、 學(xué)會壓縮和擴(kuò)充數(shù)據(jù)庫;7、 學(xué)會查看和修改數(shù)據(jù)庫選項(xiàng);8、 學(xué)會給數(shù)據(jù)庫改名和刪除數(shù)據(jù)庫。二、 實(shí)驗(yàn)內(nèi)容1.1使用系統(tǒng)存儲過程,用戶自定義數(shù)據(jù)類型use studentgoexec sp_addtype address,'varchar(80)','not null'exec sp_addtype stud_name,&

2、#39;varchar(8)','null'exec sp_addtype postalcode,'char(6)','not null'1.2使用declare語句聲明局部變量,并使用select或set語句給變量賦值declare local_variable_int int,local_variable_char nvarchar(9)select local_variable_int=40set local_variable_char='welcome to changsha'select local_variab

3、le_intselect local_variable_charGO1.3、運(yùn)用流程控制語句編寫程序使用if 語句求1到10之間累加“和”并輸出結(jié)果declare sum int,count intselect sum=0,count=1label:select sum=sum+countselect count=count+1if count<=10goto labelselect sum,count編寫計(jì)算n?。╪=20)的t-sql語句declare n bigint, count intselect n=1,count=20label:select n=count*nselect

4、 count=count-1if count>=1goto labelselect n,count輸出字符串“school”中每一個字符的ascii值和字符declare position int,string char(6)set position=1set string='School'while position<=datalength(string) begin select ascii(substring(string,position,1) as asccode, char(ascii(substring(string,position,1) as as

5、cchar set position=position+1end設(shè)置在9:00進(jìn)行一次查詢操作語句:Use studentGoBeginWaitfor time 9:00Select *from stud_infoEnd2.1、使用T-SQl語句創(chuàng)建數(shù)據(jù)庫語句:create database studentonprimary (name=student_data,'d:mydocstudent.mdf',size=3 MB,maxsize=10 MB, MB)log on (name=cumt_log,'d:mydocstudent_ldf',size=3 MB

6、,maxsize=10 MB, MB)2.2、使用T-SQL語句將數(shù)據(jù)庫student的初始分配空間大小擴(kuò)充到40mbUse studentGoAlter database studentModify file(name=student.mdf,Size=40MB)2.3、壓縮空間至最小容量、use studentgodbcc shrinkdatabase ('student')2.4設(shè)置只讀exec sp_dboption 'student','read only',true2.5數(shù)據(jù)庫改名exec sp_dboption 'stude

7、nt','single user','scholastic'exec sp_dboption 'student','scholastic'exec sp_dboption 'pupil','single user'實(shí)驗(yàn)體會本次實(shí)驗(yàn)主要是書本第二和三章的實(shí)驗(yàn)內(nèi)容和部分課后習(xí)題,通過這次的實(shí)驗(yàn)主要是對t-sql基本語法進(jìn)行加深和鞏固以及了解并掌楃sqlserver2005軟件的一些基礎(chǔ)操作。其中t- sql語句和我們之前學(xué)習(xí)的sql語句有很多相同的地方,因此基礎(chǔ)學(xué)習(xí)起來相對比較簡單,只要在原來的

8、基礎(chǔ)上補(bǔ)充一些t-sql語句中 的差異和補(bǔ)充就可以了。通過這次的實(shí)驗(yàn)對sql語言的掌握有了一定的提高,同時也對t-sql有了一個整體上的認(rèn)識。這次實(shí)驗(yàn)中又很多的實(shí)驗(yàn)內(nèi)容是分別通過對象資源管理器和t-sql語句來實(shí)現(xiàn)相同的操1作,通過對比,我們發(fā)現(xiàn)這兩種方法對不同的操作有不同的便捷性,但總的來說sql server軟件中t-sql語句要比對象資源管理器功能強(qiáng)大,可以實(shí)現(xiàn)許多資源管理器無法實(shí)現(xiàn)的操作,因此擁有良好的t- sql語言基礎(chǔ)也是我們熟練運(yùn)用該軟件的一個必要條件。總的來說,這次實(shí)驗(yàn)使我初步掌握了sql server2005軟件的一些簡單操作,在實(shí)驗(yàn)過程中我發(fā)現(xiàn)熟練掌握t-sql語言是相當(dāng)重

9、要的。在剩下的實(shí)驗(yàn)中要多加練習(xí)并下學(xué)習(xí)軟件和語句的基礎(chǔ)知識。數(shù)據(jù)庫應(yīng)用技術(shù) 實(shí)驗(yàn)二一、 實(shí)驗(yàn)?zāi)康募耙?、 了解sql server的數(shù)據(jù)類型;2、 了解數(shù)據(jù)表的結(jié)構(gòu)特點(diǎn);3、 學(xué)會使用對象資源管理器和t-sql語句進(jìn)行數(shù)據(jù)表的相關(guān)操作;4、 學(xué)會定義約束、使用默認(rèn)值和規(guī)則;5、 掌握select語句的基本用法;6、 學(xué)會使用order by句子進(jìn)行排序,使用group by句子進(jìn)行分組統(tǒng)計(jì);7、 學(xué)會數(shù)據(jù)匯總、連接查詢、嵌套查詢的方法。二、 實(shí)驗(yàn)內(nèi)容1、數(shù)據(jù)表的相關(guān)操作use studentgoalter table teacher_infoalter column teacher_id c

10、har(8)goalter table stud_infoadd scome datetimealter table stud_infoadd constraint ch_mark check(mark between '560' and '600')alter table stud_infoadd constraint un_telephone unique (telcode)alter table stud_gradeadd constraint fk_stud_id foreign key(stud_id)references stud_info(stud

11、_id)2、查詢stud_info 表中性別為女的學(xué)生的地址和電話語句:select*from stud_infoselect stud_id,address,telcode from stud_infoselect stud_id,name,address,telcode from stud_info where stud_id='0401010634'select stud_id as'學(xué)號',name as'姓名',address as'地址',telcode as'電話'from stud_info whe

12、re gender=N'女'3、連接查詢語句:select *from stud_info,stud_gradeon stud_info.stud_id=stud_grade.stud_idorder by stud_info.stud_idselect lesson_info.course_name,teache,teacher_info.teacher_idfrom teacher_info left outer join lesson_info on teacher_info.course_id=lesson_info.course_id4、數(shù)據(jù)匯總,查詢計(jì)算機(jī)工程系所有

13、老師的平均工資語句:select AVG(teacher_info.salary) as'計(jì)算機(jī)工程系教師平均工資'from teacher_info where LEFT(teacher_id,2)=(select deptcode from dept_code where deptname=N'計(jì)算機(jī)工程系')5、計(jì)算機(jī)工程系職稱為講師的教師按年齡由低到高排列語句:select teacher_id,name,tech_title,agefrom teacher_infowhere tech_title=N'講師'order by age d

14、esc三、 實(shí)驗(yàn)體會本次實(shí)驗(yàn)的實(shí)驗(yàn)內(nèi)容為書本4-5章的實(shí)驗(yàn)及部分習(xí)題,主要是對表的操作、約束規(guī)則等的創(chuàng)建和使用、select語句的用法以及對查詢結(jié)果的排序和分組統(tǒng)計(jì)。這一次的實(shí)驗(yàn)內(nèi)容基本較簡單,和之前的sql語句相比實(shí)用性以及可理解性更高了。T-sql語言是針對sql server的一種應(yīng)用工具語言,我們可以通過多練習(xí)來提高自己的能力。數(shù)據(jù)庫主要是通過表來實(shí)現(xiàn)對數(shù)據(jù)的管理,應(yīng)此對表的理解和認(rèn)識將很大程度影響我們對數(shù)據(jù)庫的應(yīng)用。通過實(shí)驗(yàn)我發(fā)現(xiàn)一些簡單的sql語句的組合可以實(shí)現(xiàn)一些比較復(fù)雜的操作,和那些高級語言相比比較簡潔也易于理解。通過t-sql語言來對數(shù)據(jù)庫進(jìn)行操作時不僅考驗(yàn)我們對語言的軟件的

15、熟練程度,也一定程度上增強(qiáng)我們對數(shù)據(jù)庫本身的理解和認(rèn)識。數(shù)據(jù)庫應(yīng)用技術(shù) 實(shí)驗(yàn)三一、 實(shí)驗(yàn)?zāi)康募耙?、 理解視圖的概念;2、 學(xué)會視圖的創(chuàng)建、查詢等相關(guān)操作;3、 學(xué)會使用對象資源管理器或t-sql語句創(chuàng)建各類索引;4、 學(xué)會索引的查看和修改等操作二、 實(shí)驗(yàn)內(nèi)容1、將表stud_info中所有女生記錄定義為一個視圖(stud_info_female)use studentgocreate view stud_info_femaleas select stud_id,name,birthday,gender,address,telcode,zipcode,mark,p_id,scomefrom

16、stud_infowhere gender=N'女'goselect*from stud_info_female2、將張艷從管理工程系轉(zhuǎn)到計(jì)算機(jī)系。update stud_info_femaleset stud_id=SUBSTRING(stud_id,1,2)+'02'+SUBSTRING(stud_id,5,6)where name=N'張艷燕'3、為stud_info學(xué)生信息表創(chuàng)建一個機(jī)遇“入學(xué)成績,學(xué)號”組合列的非聚集、復(fù)合索引。語句:use studentgocreate unique index cj_xh_index on stud

17、_info(stud_id,mark)4、為信息表lesson_info創(chuàng)建一個基于“課程號,課程類型”組合列的唯一、聚集、符合索引kc_lx_index語句:use studentgocreate unique clustered index kc_lx_index on lesson_info(course_id,course_type)withpad_index,fillfactor=80,ignore_dup_key三、 實(shí)驗(yàn)體會本次實(shí)驗(yàn)的內(nèi)容是課本第6-7章的實(shí)驗(yàn)及部分課后習(xí)題,主要是學(xué)習(xí)sql server軟件中視圖和索引的相關(guān)操作。通過這一次實(shí)驗(yàn)對視圖有了更好的理解,視圖并不是獨(dú)

18、立的數(shù)據(jù)結(jié)構(gòu),它沒有自己的存儲單元,它的作用就是在建立視圖的基礎(chǔ)上更方便直觀的展示一些數(shù)據(jù),另外視圖也可防止一些我們不希望客戶進(jìn)行的操作,有助于保證數(shù)據(jù)庫的安全性。視圖的相關(guān)操作和語法和我們前面學(xué)習(xí)的表類似,視圖的活動性較大,通過不同關(guān)鍵字的定義,我們可以讓視圖實(shí)現(xiàn)不同的功能。在數(shù)據(jù)量較大的時候進(jìn)行查詢時通常需要較長時間才能得到我們需要的數(shù)據(jù)信息,效率較低,當(dāng)通過對一些我們需要經(jīng)常反問的數(shù)據(jù)項(xiàng)添加索引后查詢效率會大大提高。由于索引本身也占用一定內(nèi)存,所以在定義索引時候需要盡可能的合理安排索引的數(shù)量以減少對內(nèi)存資源的消耗。聚集索引和非聚集索引在存促結(jié)構(gòu)上有本質(zhì)區(qū)別,應(yīng)此在使用時應(yīng)注意前后順序。視

19、圖和索引都是在表的基礎(chǔ)上定義的數(shù)據(jù)結(jié)構(gòu),目的是為了更好地使用數(shù)據(jù)庫和數(shù)據(jù)庫信息資源。數(shù)據(jù)庫應(yīng)用技術(shù) 實(shí)驗(yàn)四一、 實(shí)驗(yàn)?zāi)康募耙?、理解存儲過錯及觸發(fā)器的作用;2、學(xué)會使用對象資源管理器和t-sql語句實(shí)現(xiàn)存儲過程和觸發(fā)器的創(chuàng)建和管理方法;3、了解sql server程序設(shè)計(jì)的方法;4、學(xué)會批處理、流程控制、事務(wù)處理、鎖、游標(biāo)的使用方法。二、 實(shí)驗(yàn)內(nèi)容1、建立一個插入教師記錄的存儲過程teacher_insert 語句:create proc teacher_insert(no char(6),nam nvarchar(4),sex nchar(1),age int,title nchar(5)

20、,tel varchar(12),sala decimal(7),num char(10)asinsert into teacher_info values(no,nam,sex,age,title,tel,sala,num)goexec teacher_insert'10119',N'聶子楓',N'男',40,N'研究員','',250.0,'0401010113'2、創(chuàng)建一個觸發(fā)器teacher_tril,當(dāng)向teacher_info插入一條記錄時,自動顯示表語句:teacher_info的記錄

21、create trigger teacher_trilon stud_infofor insertasselect * from teacher_info驗(yàn)證語句:insert into teacher_info values('010119',N'聶曉基',N'男',40,N'講師','',250.0,'0401010108')3、運(yùn)用事物處理將student數(shù)據(jù)庫中課程信息表lesson_info中的多媒體技術(shù)課程編號course_id由0401010106修改為0401010116語句:use

22、 studentgobegin transaction stud_transactionupdate lesson_info set course_id='0401010116' where course_id='0401010106'save tran stud_savepointupdate teach_schedule set course_id='0401010106' where course_id='0401010106'update stud_grade set course_id='0401010106' where course_id='0401010106'update teacher_i

溫馨提示

  • 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論