實驗一 建立數(shù)據(jù)庫及其對象及答案_第1頁
實驗一 建立數(shù)據(jù)庫及其對象及答案_第2頁
實驗一 建立數(shù)據(jù)庫及其對象及答案_第3頁
實驗一 建立數(shù)據(jù)庫及其對象及答案_第4頁
實驗一 建立數(shù)據(jù)庫及其對象及答案_第5頁
全文預(yù)覽已結(jié)束

下載本文檔

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

文檔簡介

5/5實驗一建立數(shù)據(jù)庫及其對象及答案

實驗一建立數(shù)據(jù)庫及其對象

一、實驗?zāi)康?/p>

1、掌握用SSMS或Transact-SQL創(chuàng)建、查看、修改、刪除數(shù)據(jù)庫的方法;

2、掌握數(shù)據(jù)庫的備份和恢復方法;

3、掌握數(shù)據(jù)庫的分離和附加方法;

4、掌握用SSMS或Transact-SQL語句創(chuàng)建、修改、刪除表及向其添加數(shù)據(jù)的方法。

二、實驗要求

1、實驗前做好上機實驗的準備,針對實驗內(nèi)容,認真復習與本次實驗有關(guān)的知識,完成

實驗內(nèi)容的預(yù)習準備工作;

2、能認真獨立完成實訓內(nèi)容;

3、實驗后做好實驗總結(jié),根據(jù)實驗情況完成總結(jié)報告。

三、實驗內(nèi)容

1、用SSMS在“對象資源管理器”中完成如下任務(wù):

(1

(2)再修改學生課程數(shù)據(jù)庫Student的主數(shù)據(jù)文件的大小,使其擴大兩倍,然后查看擴大后的數(shù)據(jù)庫屬性。

2、用SSMS,在數(shù)據(jù)庫Student中:

(1)創(chuàng)建如下四個表,并設(shè)置相關(guān)的約束條件:

(2)用SSMS修改將剛才所創(chuàng)建表:①在Course表中插入如下兩列:

②將SC表中列Grade的類型改為smallint

③在S表中創(chuàng)建CHECK約束,約束名為Sagechk,要求實現(xiàn)年齡在15~45取值

④在Course表中創(chuàng)建外鍵約束,約束名為Fk_Tno,要求實現(xiàn)Course表中的Tno必須參照Teacher表的Tno取值。⑤刪除Course表中Tno列(3)刪除將剛才所創(chuàng)建Teacher表(4)向表插入以下數(shù)據(jù)S

3、用SSMS方法完成如下數(shù)據(jù)庫的分離和附加:

(1)分離Student數(shù)據(jù)庫

⑵附加Student數(shù)據(jù)庫

4.用SSMS方法完成如下數(shù)據(jù)庫的備份和恢復:(選作實驗)

(1)備份數(shù)據(jù)庫

①創(chuàng)建備份設(shè)備,其名稱為bk_Student0,保存文件為D:\Student0.bak,并對Student數(shù)據(jù)庫進行完全備份,備份到備份設(shè)備bk_Student0中。

②在Student數(shù)據(jù)庫中,創(chuàng)建一張表temp1(學號,課程號,成績,學分)并對Student數(shù)據(jù)庫進行第一次差異備份,備份到備份設(shè)備bk_Student1中

③在Student數(shù)據(jù)庫中,再創(chuàng)建一個用戶表:temp2(學號,課程號,成績,學分),并對Student數(shù)據(jù)庫進行第二次差異備份,備份到備份設(shè)備bk_Student2中。

(2)刪除Student數(shù)據(jù)庫

(3)恢復數(shù)據(jù)庫

①從備份設(shè)備bk_Student0中恢復Student數(shù)據(jù)庫,并查看表temp1和temp2是否存在?

②再次刪除數(shù)據(jù)庫Student,然后將Student數(shù)據(jù)庫恢復到第一次差異備份后的狀態(tài),并查看表temp1和temp2是否存在?

③再次刪除數(shù)據(jù)庫Student,然后將Student數(shù)據(jù)庫恢復到第二次差異備份后的狀態(tài),并查看表temp1和temp2是否存在?

/*createdatabaseStudent//創(chuàng)建Student數(shù)據(jù)庫,并且表明類型名稱等。

onprimary

(name=student_dat,//邏輯名

filename='D:\Student.mdf',//物理名

size=10MB,

maxsize=100MB,

filegrowth=10%)

logon

(name=Student_log,

filename='D:\Student_log.ldf',

size=5MB,

filegrowth=10MB)*//*12*/

/*AlterdatabaseStudent

modifyfile

(name=student_dat,

filename='D:\Student.mdf',

size=20MB,

maxsize=100MB,

filegrowth=10%)*//*19*/

/*createtableS

(Snointconstraints_primprimarykey,

Snamechar(10)notnullunique,

Ssexchar(2)check(Ssexin('男','女')),//性別只能取男或女

Sagesmallint,

Sdeptchar(20)default'計算機系');*//*25*///默認值是“計算機系”/*createtableCourse//創(chuàng)建Course表

(Cnochar(4)primarykey,

Cnamechar(10)notnull,

Tnointnotnull)*//*29*/

/*createtableSC

(Snointnotnull,

Cnochar(4)notnull,

Gradeintnull,

primarykey(Sno,Cno),

foreignkey(Sno)referencesS(Sno),

foreignkey(Cno)referencesCourse(Cno),

check(Gradebetween0and100)

);*//*38*/

/*createtableTeacher

(Tnointprimarykey,

Tnamechar(10)notnull,

Sdaptchar(20)default'計算機系')*//*42*/

/*altertableCourse//在Course里面增加列addCpnochar(4),

Ccreditintnotnull*//*45*/

/*altertableSC//更改數(shù)據(jù)類型altercolumnGradesmallint*//*47*/

/*altertableSC//刪除外鍵約束

dropCK__SC__Grade__0DAF0CB0;*//*49*/

/*altertableSC

altercolumnGradesmallint*//*51*/

/*altertableS

addconstraintSagechkcheck(Sagebetween15and45)*//*53*/

//為Sage設(shè)置取值范圍,并且為約束條件取名

/*altertableCourse

addconstraintFk_Tnoforeignkey(Tno)referencesTeacher(Tno)*//*55*//*sp_rename'Course.teacher','Tno'*//*由于第一次做的時候我前面失誤,

把Tno錯打成Teacher了,所以就查下怎么更改,其中Course是原表名,teacher是原列名,Tno是更改后的名字*/

/*altertableCourse*///為Tno設(shè)置外鍵約束

/*dropcolumnTno*/

/*dropPK__Teacher__C450026D108B795B*/

/*dropconstraintFk_Tno*//*62*/

/*altertableTeacher//刪除Teacher表

dropcolumnTno*/

/*dropPK__Teacher__C450026D108B795B*//*65*/

/*droptableTeacher*///寫入數(shù)據(jù)

/*insertintoSvalues('1001','王勇','男','20','電子系')*/

/*insertintoSvalues('1002','劉梅','女','19','計算機系')

insertintoSvalues('1003','王芳','女','18','網(wǎng)絡(luò)系')

insertintoSvalues('1004','張兵','男','17','軟件系')*/

/*insertintoSCvalues('1001','1','92')

insertintoSCvalues('1001','2','85')

insertintoSCvalues('1001','3','88')

insertintoSCvalues('1002','2','90')

insertintoSCvalues('1003','2','55')

insertintoSCvalues('1004','2','70')*//*76*/

/*altertableSC

dropFK__SC__Cno__0CBAE877*//*78*/

/*sp_detach_db'Student'*///分離數(shù)據(jù)庫

/*sp_attach_db'Student','D:\Student.mdf','D:\Student_log.ldf'*//*80*///附加數(shù)據(jù)庫

/*sp_addumpdevice'disk','bk_Student0','D:\Student0.bak'*/

//創(chuàng)建備份設(shè)備

/*backupdatabaseStudent//第一次完全備份

tobk_Student0

withinit

go*/

/*createtabletemp1//創(chuàng)建新表temp1

(Snoint,

Cnochar(4),

Gradesmallint,

Ccreditint

)*/

/*sp_addumpdevice'disk','bk_Student1','D:\Student1.bak'*//*創(chuàng)建備份設(shè)備*/

/*backupdatabaseStudent//差異備份

tobk_Student1

withdifferential

go*/

/*createtabletemp2

(Snoint,

Cnochar(4),

Gradesmallint,

Ccreditint

)*/

/*sp_addumpdevice'disk','bk_Student2','D:\Student2.bak'*/

/*backupdatabaseStudent

tobk_Student2

withdifferential

go*/

/*dropdatabaseStudent*///刪除數(shù)據(jù)庫

/*usemaster//第一次完全恢復

restoredatabaseStudent

frombk_Student0*/

/*dropdatabaseStudent*/

/*usemaster//第二次差異恢復

restoredatabaseStudent

frombk_Student0

withfile=1,norecovery

go

restoredatabaseStudent

frombk_Student1

go*/

/*dropdatabaseS

溫馨提示

  • 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)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論