數(shù)據(jù)庫(kù)系統(tǒng)的原理學(xué)生實(shí)驗(yàn)報(bào)告_第1頁(yè)
數(shù)據(jù)庫(kù)系統(tǒng)的原理學(xué)生實(shí)驗(yàn)報(bào)告_第2頁(yè)
數(shù)據(jù)庫(kù)系統(tǒng)的原理學(xué)生實(shí)驗(yàn)報(bào)告_第3頁(yè)
已閱讀5頁(yè),還剩36頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、學(xué)生實(shí)驗(yàn)報(bào)告(理工類)實(shí)驗(yàn)報(bào)告書寫要求實(shí)驗(yàn)報(bào)告原則上要求學(xué)生手寫,要求書寫工整。若因課程特點(diǎn)需打印的,要遵照以下字體、字號(hào)、間距等的具體要求。紙張一律采用 A4 的紙張。實(shí)驗(yàn)報(bào)告書寫說(shuō)明實(shí)驗(yàn)報(bào)告中一至四項(xiàng)內(nèi)容為必填項(xiàng), 包括實(shí)驗(yàn)?zāi)康暮鸵螅?實(shí)驗(yàn)儀器和設(shè) 備;實(shí)驗(yàn)內(nèi)容與過(guò)程; 實(shí)驗(yàn)結(jié)果與分析。 各院部可根據(jù)學(xué)科特點(diǎn)和實(shí)驗(yàn)具體要 求增加項(xiàng)目。填寫注意事項(xiàng)(1)細(xì)致觀察,及時(shí)、準(zhǔn)確、如實(shí)記錄。(2)準(zhǔn)確說(shuō)明,層次清晰。(3)盡量采用專用術(shù)語(yǔ)來(lái)說(shuō)明事物。(4)外文、符號(hào)、公式要準(zhǔn)確,應(yīng)使用統(tǒng)一規(guī)定的名詞和符號(hào)。(5)應(yīng)獨(dú)立完成實(shí)驗(yàn)報(bào)告的書寫,嚴(yán)禁抄襲、復(fù)印,一經(jīng)發(fā)現(xiàn),以零分 論處。實(shí)驗(yàn)報(bào)告批改說(shuō)明實(shí)

2、驗(yàn)報(bào)告的批改要及時(shí)、認(rèn)真、仔細(xì),一律用紅色筆批改。實(shí)驗(yàn)報(bào)告的批 改成績(jī)采用百分制,具體評(píng)分標(biāo)準(zhǔn)由各院部自行制定。實(shí)驗(yàn)報(bào)告裝訂要求實(shí)驗(yàn)批改完畢后,任課老師將每門課程的每個(gè)實(shí)驗(yàn)項(xiàng)目的實(shí)驗(yàn)報(bào)告以自然 班為單位、按學(xué)號(hào)升序排列,裝訂成冊(cè),并附上一份該門課程的實(shí)驗(yàn)大綱。實(shí)驗(yàn)項(xiàng)目名稱: 熟悉SQL Server2005環(huán)境及數(shù)據(jù)庫(kù)文件管理 實(shí)驗(yàn)學(xué)時(shí):2同組學(xué)生姓名: 實(shí)驗(yàn)地點(diǎn):1316實(shí)驗(yàn)日期:2016324實(shí)驗(yàn)成績(jī): 批改教師: 王預(yù)批改時(shí)間:2016327一、實(shí)驗(yàn)?zāi)康暮鸵?、 熟悉SQLServer 2005工作環(huán)境、了解 SQLServer 2005主要管理工具的用途、掌握登錄SQLServer2

3、005的方法;2、熟悉數(shù)據(jù)庫(kù)的組成;3、了解數(shù)據(jù)庫(kù)快照的使用方法;4、掌握創(chuàng)建、修改、刪除數(shù)據(jù)庫(kù)的方法;5、熟悉如何查看數(shù)據(jù)庫(kù)狀態(tài);6、掌握分離數(shù)據(jù)庫(kù)和附加數(shù)據(jù)庫(kù)的方法。二、實(shí)驗(yàn)設(shè)備、環(huán)境設(shè)備:奔騰W或奔騰W以上計(jì)算機(jī);環(huán)境: WINDOWS 2000 SERVER WINDOWS 2003 SERVERSQL Server2005 中文版。三、實(shí)驗(yàn)步驟1、根據(jù)題目要求熟悉 SQL Server2005的各種管理工具;2、分析題意,重點(diǎn)分析題目要求并給出解決方法;3、按題目要求完成實(shí)際操作任務(wù),并將相關(guān)文檔資料保存在以自己學(xué)號(hào)命名的文件夾中;4、提交完成的實(shí)驗(yàn)結(jié)果。四、實(shí)驗(yàn)內(nèi)容一、熟悉SQL

4、Server 2005 管理工具SQL Server2005系統(tǒng)提供了大量的管理工具,通過(guò)這些管理工具可以對(duì)系統(tǒng)實(shí)現(xiàn)快速、高效管理。 主要管理工具如下:1、SQL Server Management Studio(1 )對(duì)象資源管理器允許查看和連接到 SQL Server、分析器、集成服務(wù)器、報(bào)表服務(wù)器和SQL Mobile。一旦連接到特定的服務(wù),可以在對(duì)象節(jié)點(diǎn)中查看它的組件,并且可以訪問子節(jié)點(diǎn)對(duì)象。(2 )已注冊(cè)的服務(wù)器顯示當(dāng)前已注冊(cè)的服務(wù)器。窗格頂部的列表,包括SQL Server、分析服務(wù)器、集成服務(wù)器、報(bào)表服務(wù)器和SQL Mobile。允許用戶在特定的服務(wù)器之間快速轉(zhuǎn)換。(3)模板資源

5、管理器 提供對(duì)查詢編輯器的模板和任何用戶所創(chuàng)建的自定義模板的快速訪問。模板可以通過(guò) SQL Server Management Studio 所支持的任何腳本語(yǔ)言來(lái)創(chuàng)建。(4)解決方案管理器提供對(duì)現(xiàn)存的 SQL Server 、分析服務(wù)器和 SQL Mobile 的項(xiàng)目的快速訪問。當(dāng)項(xiàng)目被執(zhí)行時(shí),項(xiàng)目 會(huì)給出連接、查詢和執(zhí)行的其他函數(shù)的詳細(xì)信息。2、SQL Server Business Intelligence Development Studio(商業(yè)智能)SQL Server Business Intelligence Development Studio 為開發(fā)人員提供的一種新的項(xiàng)目開

6、發(fā)和 管理工具。開發(fā)人員可以使用 SQL Server Business Intelligence Development Studio 設(shè)計(jì)端到端的 商業(yè)智能解決方案。3、SQL Server ConfigurationSQL Server Configuration (配置管理器)包含了 SQL Server2005 服務(wù)、 SQL Server2005 網(wǎng)絡(luò)配 置和 SQL Native Client 配置 3個(gè)工具,提供數(shù)據(jù)庫(kù)管理人員做服務(wù)啟動(dòng)與停止與監(jiān)控、服務(wù)器端支持 的網(wǎng)絡(luò)協(xié)議,用戶用來(lái)訪問SQL Server 的網(wǎng)絡(luò)相關(guān)設(shè)置等工作。4、SQL Server 外圍應(yīng)用配置SQLSe

7、rver 外圍應(yīng)用配置器是 SQLServer2005 的新增功能,該工具是用來(lái)減少SQL Server 的服務(wù)數(shù)和組件數(shù)的一種方法,以幫助保護(hù) SQL Server 避免出現(xiàn)安全缺口。5、Database Engine Tuning Advisor(數(shù)據(jù)庫(kù)引擎的優(yōu)化顧問)工具可以完成幫助用戶分析工作負(fù)荷、提出創(chuàng)建高效索引的建議等功能。6、SQL Server 聯(lián)機(jī)叢書:主要為用戶提供幫助。7、sqlcmd :提供了在命令提示符中輸入Transact-SQL 語(yǔ)句、系統(tǒng)過(guò)程和腳本文件的功能。二、熟悉數(shù)據(jù)庫(kù)的組成1、系統(tǒng)數(shù)據(jù)庫(kù)(1)master 數(shù)據(jù)庫(kù)master 數(shù)據(jù)庫(kù)存儲(chǔ) SQL Serve

8、r2005 系統(tǒng)的所有系統(tǒng)級(jí)信息。包括實(shí)例范圍的元數(shù)據(jù)、端點(diǎn)、鏈接 服務(wù)器和系統(tǒng)配置設(shè)置。(2)model 數(shù)據(jù)庫(kù)Model 數(shù)據(jù)庫(kù)用作 SQLServer2005 實(shí)例上創(chuàng)建的所有數(shù)據(jù)庫(kù)的模板。在 SQLServer2005 中在三個(gè)方 面做了重大改變,包括:擴(kuò)大了最小值取之范圍、兼容級(jí)別設(shè)置為90和PAGE_VERIF澈據(jù)庫(kù)選項(xiàng)設(shè)置為 CHECKSUM(3)msdb數(shù)據(jù)庫(kù)Msdb 數(shù)據(jù)庫(kù)主要被 SQLServer2005 代理用于進(jìn)行復(fù)制、作業(yè)調(diào)度以及管理警報(bào)等活動(dòng),該數(shù)據(jù)庫(kù)通 常用于調(diào)度任務(wù)或排除故障。( 4) tempdb 數(shù)據(jù)庫(kù)tempdb 數(shù)據(jù)庫(kù)是連接到 SQLServer2005

9、 所有用戶都可能用的全局資源, 它保存所有臨時(shí)表和臨時(shí)存 儲(chǔ)過(guò)程。另外,它還用來(lái)滿足所有的其他存儲(chǔ)要求,例如,存儲(chǔ) SQLServer 2005 工作表。每次啟動(dòng) SQL Server2005 時(shí)都會(huì)重新創(chuàng)建 tempdb 數(shù)據(jù)庫(kù),以便系統(tǒng)啟動(dòng)時(shí),給數(shù)據(jù)庫(kù)總是空的。斷開連接時(shí)會(huì)自動(dòng) 刪除臨時(shí)表和存儲(chǔ)過(guò)程,并在系統(tǒng)關(guān)閉后沒有活動(dòng)的連接。(5)resource 數(shù)據(jù)庫(kù)resource 數(shù)據(jù)庫(kù)是一個(gè)只讀數(shù)據(jù)庫(kù),它包含了 SQL Server2005 中的所有系統(tǒng)對(duì)象。 SQL Server 系 統(tǒng)對(duì)象在物理上持續(xù)存在于 Resource 數(shù)據(jù)庫(kù)中, 但邏輯上, 他們出現(xiàn)在數(shù)據(jù)庫(kù)的 sys 架構(gòu)上。

10、resource 數(shù)據(jù)庫(kù)的物理文件名為 Mssqlsystemresource.mdf 。任意移動(dòng)或重命名 resource 數(shù)據(jù)庫(kù)文件, SQL Server2005 將不能正常啟動(dòng)。三、數(shù)據(jù)庫(kù)存儲(chǔ)文件SQL Server2005 數(shù)據(jù)庫(kù)中有三種類型的文件來(lái)存儲(chǔ)信息。1、主數(shù)據(jù)文件 主數(shù)據(jù)文件包話數(shù)據(jù)庫(kù)的啟動(dòng)信息,并指向數(shù)據(jù)庫(kù)中的其他文件。用戶數(shù)據(jù)和對(duì)象可存儲(chǔ)在該文件 中,也可以存儲(chǔ)在輔助數(shù)據(jù)文件中。每個(gè)數(shù)據(jù)庫(kù)只能有一個(gè)主數(shù)據(jù)文件。其擴(kuò)展名為 .mdf 。2、輔助數(shù)據(jù)文件 輔助數(shù)據(jù)文件是可選的。由用戶定義并存儲(chǔ)用戶數(shù)據(jù)。每個(gè)數(shù)據(jù)庫(kù)可以有多個(gè)輔助數(shù)據(jù)文件,其擴(kuò) 展名為 .ndf 。3、事務(wù)日志

11、文件 事務(wù)日志文件是用于保存恢復(fù)數(shù)據(jù)庫(kù)的日志信息的。每個(gè)數(shù)據(jù)庫(kù)必須至少有一個(gè)日志文件,其擴(kuò)展 名為 .ldf 。4、文件組 文件組是將多個(gè)數(shù)據(jù)文件集合起來(lái)形成一個(gè)整體。每個(gè)文件組有一個(gè)組名。文件組分為主文件組和 次文件組。一個(gè)文件只能存放在一個(gè)文件組中,一個(gè)文件組也只能為一個(gè)數(shù)據(jù)庫(kù)使用。主文件組包含了 所有的系統(tǒng)表。當(dāng)建立數(shù)據(jù)庫(kù)時(shí),主文件組包含數(shù)據(jù)庫(kù)文件和未指定組的其他文件。事務(wù)日志文件不包 含在任何文件組中。四、創(chuàng)建數(shù)據(jù)庫(kù)1、使用向?qū)?chuàng)建數(shù)據(jù)庫(kù)2、語(yǔ)句方式創(chuàng)建數(shù)據(jù)庫(kù)(1)最簡(jiǎn)單的語(yǔ)句創(chuàng)建數(shù)據(jù)庫(kù) Create database databaseName(2)一般創(chuàng)建數(shù)據(jù)庫(kù)的格式 CREATE

12、DATABASE database_nameON< filespec > ,.n, < filegroup > ,.nLOG ON < filespec > ,.n COLLATE collation_nameFOR LOAD | FOR ATTACH < filespec > :=PRIMARY ( NAME = logical_file_name ,FILENAME = 'os_file_name', SIZE = size, MAXSIZE = max_size | UNLIMITED , FILEGROWTH = grow

13、th_increment ) ,.n< filegroup > :=FILEGROUP filegroup_name < filespec > ,.n(3) 示例CREATE DATABASE SalesON( NAME = Sales_dat,FILENAME = 'c:program filesmicrosoft sql servermssqldatasaledat.mdf',SIZE = 10,MAXSIZE = 50,FILEGROWTH = 5 )LOG ON ( NAME = 'Sales_log',FILENAME = &#

14、39;c:program filesmicrosoft sql servermssqldatasalelog.ldf',SIZE = 5MB,MAXSIZE = 25MB,FILEGROWTH = 5MB )3、請(qǐng)按照要求用工具和SQL語(yǔ)句兩種方法創(chuàng)建名為 MyDB數(shù)據(jù)庫(kù)。五、維護(hù)數(shù)據(jù)庫(kù)1、修改數(shù)據(jù)庫(kù)名稱(1)使用 ALTER DATABAS語(yǔ)句ALTER DATABASE databaseName MODIFY NAME=newdatabaseName2)使用存儲(chǔ)過(guò)程EXEC sp_dboptiondatabaseName', SINGLE',True /*首先將數(shù)據(jù)

15、庫(kù)設(shè)置為單用戶模式 */EXEC sp_renamedbdatabaseName' , newdatabaseName' /* 修改數(shù)據(jù)庫(kù)名 */EXEC sp_dboptionnewdatabaseName', SINGL E' ,False /* 取消單用戶模式 */3)從資源管理器窗口修改數(shù)據(jù)庫(kù)名2、修改數(shù)據(jù)庫(kù)大小( 1 )設(shè)置數(shù)據(jù)庫(kù)文件為自動(dòng)增長(zhǎng)方式( 2)直接修改數(shù)據(jù)庫(kù)文件的大小( 3)增加輔助數(shù)據(jù)庫(kù)文件( 4 )示例CREATE DATABASE Test1 ON(NAME = Test1dat1,FILENAME = 'c:Program

16、FilesMicrosoft SQL ServerMSSQLDatat1dat1.ndf',SIZE = 5MB,MAXSIZE = 100MB,FILEGROWTH = 5MB )GOALTER DATABASE Test1ADD FILE (NAME = Test1dat2,FILENAME = 'c:Program FilesMicrosoft SQL ServerMSSQLDatat1dat2.ndf',SIZE = 5MB,MAXSIZE = 100MB,FILEGROWTH = 5MB )(5)請(qǐng)參照示例用 SQL語(yǔ)句為MyDB數(shù)據(jù)庫(kù)增加輔助數(shù)據(jù)庫(kù)文件MyD

17、B2其大小為3MB最大為10MB按照 10%增長(zhǎng)。3、收縮數(shù)據(jù)庫(kù)( 1 )設(shè)置數(shù)據(jù)庫(kù)為自動(dòng)收縮( 2)手動(dòng)收縮數(shù)據(jù)庫(kù)(3)使用 DBCC SHRINKDATABASE令收縮數(shù)據(jù)庫(kù) 該命令是一種比自動(dòng)收縮數(shù)據(jù)庫(kù)更加靈活的收縮數(shù)據(jù)庫(kù)方式。可以對(duì)整個(gè)數(shù)據(jù)庫(kù)進(jìn)行收縮。示例: DBCC SHRINKDATABASE (UserDB, 10)/*該命令將UserDB用戶數(shù)據(jù)庫(kù)中的文件減小 ,以使UserDB中的文件有10%的可用空間。*/(4 )請(qǐng)使用該命令將 MyDB數(shù)據(jù)庫(kù)收縮到有10%的可用空間。4、刪除數(shù)據(jù)庫(kù)( 1 )使用管理工具(2) 使用T-SQL語(yǔ)句DROP DATABASE database

18、_name ,.n5、分離數(shù)據(jù)庫(kù)分離數(shù)據(jù)庫(kù)是指數(shù)據(jù)庫(kù)從 SQL Server 實(shí)例上刪除,但是數(shù)據(jù)文件、但事務(wù)日志文件仍然保持不變。 注意:分離數(shù)據(jù)庫(kù)如果出現(xiàn)下列情況之一,則不允許分離:*已復(fù)制并發(fā)數(shù)據(jù)庫(kù)、 * 數(shù)據(jù)庫(kù)中存在數(shù)據(jù)庫(kù)快照、 * 數(shù)據(jù)庫(kù)處于未知狀態(tài)。( 1 )使用語(yǔ)句分離數(shù)據(jù)庫(kù)示例: exec sp_detach_db MyDB( 2)可以使用工具6、附加數(shù)據(jù)庫(kù)附加數(shù)據(jù)庫(kù)時(shí),所有的數(shù)據(jù)文件( .mdf 文件和 .ndf 文件)都必須是可用的。如果任何數(shù)據(jù)文件的 路徑和創(chuàng)建時(shí)或上次附加數(shù)據(jù)庫(kù)時(shí)的路徑不同,則必須指定文件的當(dāng)前路徑。在附加數(shù)據(jù)庫(kù)的過(guò)程中, 如果沒有日志文件,系統(tǒng)將創(chuàng)建一

19、個(gè)新的日志文件。(1) 使用工具附加數(shù)據(jù)庫(kù)(2) 使用SQL語(yǔ)句附加數(shù)據(jù)庫(kù)示例: CREATE DATABASE SalesON ( NAME =Sales_dat ',FILENAME = c:program filesmicrosoft sql servermssqldatasaledat.mdf' )LOG ON( NAME = Sales_log',FILENAME = c:program filesmicrosoft sql servermssqldatasalelog.ldf')FOR ATTACH(3) 請(qǐng)用上述兩種方法將 MyDE數(shù)據(jù)庫(kù)附加到實(shí)例

20、中。五、問題解答及實(shí)驗(yàn)結(jié)果1. 創(chuàng)建數(shù)據(jù)庫(kù) MyDEcreate database MyDEon( name=MyDE_data,Filename='D:dataMy_data.mdf',size=3ME,fileGrowth=1mb) log on(name=MyDE_log,Filename='D:dataMyDE_log.ldf',size=1ME,filegrowth=10%)2. 重命名數(shù)據(jù)庫(kù),改為 MyDE1先刷新alter database MyDE Modify name=MyDE13. 使用存儲(chǔ)過(guò)程修改數(shù)據(jù)庫(kù)名稱exec sp_dboption

21、 'MyDE','SINGLE',Trueexec sp_renamedb 'MyDE','MyDE1'exec sp_dboption 'MyDE1','SINGLE',False4. 增加輔助數(shù)據(jù)庫(kù) MyDE2alter database MyDE1add file(name=MyDE2,filename='D:dataMyDE2dat.ndf',size=3ME,Maxsize=10ME,FileGrowth=10%)5. 收縮數(shù)據(jù)庫(kù)dbcc SHRINKDATAEASE (M

22、yDE,10)6. 刪除數(shù)據(jù)庫(kù)drop database MyDE7. 附加數(shù)據(jù)庫(kù)先分離數(shù)據(jù)庫(kù),并且給 data 權(quán)限create database MyDB on (name='MyDB_dat',filename='D:dataMy_data.mdf') log on(name='MyDB_log',filename='D:dataMyDB_log.ldf')for ATTACH;六、實(shí)驗(yàn)體會(huì)和收獲2 年過(guò)去了, 我又重新開始學(xué)習(xí)數(shù)據(jù)庫(kù)了, 這次學(xué)的是 SqlServer2008 ,和當(dāng)年的學(xué)的 MySQL5.5 差不多, 大

23、同小異,初步學(xué)習(xí)了如何創(chuàng)建數(shù)據(jù)庫(kù),刪除,附加,分離等一系列基礎(chǔ)操作,為以后的學(xué)習(xí)做好了準(zhǔn) 備。這些基礎(chǔ)的東西很重要,以后每次實(shí)驗(yàn)都有可能用到,萬(wàn)事開頭難,以后學(xué)習(xí) SQLserver 一定會(huì)越 來(lái)越容易。實(shí)驗(yàn)項(xiàng)目名稱:表和表數(shù)據(jù)的操作實(shí)驗(yàn)學(xué)時(shí):_2同組學(xué)生姓名: 實(shí)驗(yàn)地點(diǎn):1316實(shí)驗(yàn)日期:2016330實(shí)驗(yàn)成績(jī): 批改教師: 王預(yù)批改時(shí)間: 201644一、實(shí)驗(yàn)?zāi)康暮鸵?、了解表的類型及創(chuàng)建方法;2、熟悉各種數(shù)據(jù)類型;3、掌握列的各種屬性;4、掌握自定義數(shù)據(jù)類型的創(chuàng)建方法;5、掌握用T-SQL語(yǔ)言和工具創(chuàng)建表的方法;6、掌握工具和T-SQL語(yǔ)言插入數(shù)據(jù)的方法。二、實(shí)驗(yàn)設(shè)備、環(huán)境設(shè)備:奔騰W

24、或奔騰W以上計(jì)算機(jī);環(huán)境: WINDOWS 2000 SERVER WINDOWS 2003 SERVERSQL Server2005 中文版。三、實(shí)驗(yàn)步驟1、根據(jù)題目要求熟悉 SQL Server2005的各種管理工具;2、分析題意,重點(diǎn)分析題目要求并給出解決方法;3、按題目要求完成實(shí)際操作任務(wù),并將相關(guān)文檔資料保存在以自己學(xué)號(hào)命名的文件夾中;4、提交完成的實(shí)驗(yàn)結(jié)果。四、實(shí)驗(yàn)內(nèi)容一、表的概述1、表的概念在關(guān)系數(shù)據(jù)庫(kù)中每一個(gè)關(guān)系都體現(xiàn)為一張表。表是用來(lái)存儲(chǔ)數(shù)據(jù)和操作數(shù)據(jù)的邏輯結(jié)構(gòu),關(guān)系數(shù)據(jù)庫(kù)中所有的數(shù)據(jù)都表現(xiàn)為表的形式。2、表的類型在SQL Server2005中,可以把表分為 4種類型,即普

25、通表、分區(qū)表、臨時(shí)表和系統(tǒng)表。每一種表都有其自身的作用和特點(diǎn)。(1)普通表:又稱為標(biāo)準(zhǔn)表,就是通常所說(shuō)的數(shù)據(jù)庫(kù)中存儲(chǔ)數(shù)據(jù)的標(biāo),是最常使用的表對(duì)象,是最重 要和最基本的表。(2)分區(qū)表:分區(qū)表示將數(shù)據(jù)水平劃分成多個(gè)單元的表,這些單元的表可以分散到數(shù)據(jù)庫(kù)中的多個(gè)文 件組里,以實(shí)現(xiàn)對(duì)單元中數(shù)據(jù)的并行訪問。其優(yōu)點(diǎn)在于可以方便地管理大型表,提高對(duì)這些表中數(shù)據(jù)的 使用效率。(3)臨時(shí)表:臨時(shí)表是臨時(shí)創(chuàng)建的、不能永久生存的表。又可以分為本地臨時(shí)表和全局臨時(shí)表。本地 臨時(shí)表以 #打頭,它們僅對(duì)當(dāng)前的用戶連接時(shí)可見的,當(dāng)用戶從SQLServe2005 實(shí)理斷開連接時(shí)被刪除;全局臨時(shí)表以 #打頭,創(chuàng)建后任何用戶都

26、是可見,當(dāng)所有引用該表的用戶從SQL Server 2005 中斷開連接時(shí)被刪除。(4)系統(tǒng)表:系統(tǒng)表與普通表的區(qū)別在于,系統(tǒng)表存儲(chǔ)了有關(guān)SQL Server 2005 服務(wù)器的配置、數(shù)據(jù)庫(kù)設(shè)置、用戶和表對(duì)象的描述等信息。二、列1、列數(shù)據(jù)類型 在設(shè)計(jì)表的時(shí)候,需要知道每列字段的數(shù)據(jù)類型。 SQLServer 2005 系統(tǒng)提供了 28 種數(shù)據(jù)類型,主 要分為七大類。(1)精確數(shù)字類型;位數(shù)據(jù)類型 bit; 貨幣數(shù)據(jù)類型: Money、Smallmoney這些數(shù)據(jù)類型的數(shù)據(jù)可以參加各種數(shù)學(xué)運(yùn)算,所有的數(shù)值都是有精度的,精度是指有效數(shù)字位數(shù)。 如整數(shù)數(shù)據(jù)類型: binint 、int 、small

27、ing 、tinyint 等。2)近似數(shù)字類型在現(xiàn)實(shí)計(jì)算中,還有一些數(shù)據(jù)沒有精確數(shù)值,如定義精確到哪一位,這種類型就是近似數(shù)據(jù)類型。如:(3)字符數(shù)據(jù)類型1/3 ,它無(wú)法用精確數(shù)字類型表示,需要由系統(tǒng)來(lái)Decimal 和 Numeric ; Float 和 Real 等。它是用來(lái)存儲(chǔ)各種字母、數(shù)字符號(hào)和特殊符號(hào)。在使用該數(shù)據(jù)類型時(shí),需要用用單引號(hào)或雙引號(hào)括 起來(lái)。 SQL Server 2005 主要提供了 Char、 Varchar 、Text3 中數(shù)據(jù)類型。(4) Unicode 字符數(shù)據(jù)類型Unicode 是一種在計(jì)算機(jī)上使用的字符編碼。它為每一種語(yǔ)言中的每個(gè)字符設(shè)定了統(tǒng)一并且唯一的 二

28、進(jìn)制編碼,以滿足跨語(yǔ)言、跨平臺(tái)進(jìn)行文本轉(zhuǎn)換、處理的要求。SQL Server 2005 主要有: Nchar 、Nvarchar 、 Ntext 三種。(5)二進(jìn)制數(shù)據(jù)類型 二進(jìn)制數(shù)據(jù)類型可以用來(lái)存儲(chǔ)二進(jìn)制的數(shù)據(jù)。主要有:Binary 、 Varbinary 、 Image 三種類型。(6)日期和時(shí)間數(shù)據(jù)類型在 SQLServer2005 中,日期和時(shí)間類型主要包括: datetime 和 smalldatetime 兩種。兩者區(qū)別在 于其表示的日期和時(shí)間的范圍不同,時(shí)間的精確度也不同。(7)其他數(shù)據(jù)類型SQLServer2005 系統(tǒng)還提供了 Cursor 、 Sql_varant 、 Ta

29、ble 、 Timestamp 、 Uniqueidentifie 、XML6 種特殊用途的數(shù)據(jù)類型。2、列的其他屬性(1) NULL和 NOT NULL定義屬性列時(shí)可以規(guī)定該列是否可以為空。(2) 默認(rèn)值當(dāng)某個(gè)屬性的值大部分的取值都是相同時(shí),可以使用默認(rèn)值來(lái)減少插入數(shù)據(jù)時(shí)的時(shí)間。(3) IDENTITY使用IDENTITY關(guān)鍵字定義的字段為標(biāo)識(shí)字段,標(biāo)識(shí)字段是唯一標(biāo)識(shí)每條記錄的特殊字段,當(dāng)一條 新記錄添加時(shí),這個(gè)字段就被自動(dòng)賦予一個(gè)新值。默認(rèn)情況下是+1遞增。三、創(chuàng)建表1、使用 SQL Server Management Studio 工具在 MyDB數(shù)據(jù)庫(kù)中創(chuàng)建 Student 和 Cla

30、ss 表。 Student表的結(jié)構(gòu)為:字段名類型中文名備注SNOChar(8)學(xué)號(hào)主鍵SNameVarchar(10)姓名SexChar(2)性別男、女ClsNOChar(6)班級(jí)班級(jí)的編號(hào),參照表 ClassStuAddrVarchar(20)住址描述性說(shuō)明BirthdaySmallDate出生年月HeightNumeric(4,2)身高以米為單位表示學(xué)生的身高。TotalCreditTi nyi nt總學(xué)分Class表的結(jié)構(gòu)為:字段名類型中文名備注ClsNOChar(6)班號(hào)主鍵ClsNameVarchar(16)班名對(duì)班級(jí)的描述信息DirectorVarchar(10)輔導(dǎo)員班級(jí)的輔導(dǎo)員

31、SpecialtyVarchar(30)專業(yè)2、使用T-SQL語(yǔ)言在MyDB數(shù)據(jù)庫(kù)中創(chuàng)建再 Course和Grade表,為以后的實(shí)驗(yàn)做準(zhǔn)備。Course表的結(jié)構(gòu)為:字段名類型中文名備注CNOChar(4)】田千口 i=r. 課程號(hào)主鍵CNameVarchar(16)課程名課程的名稱PCNOchar(4)先修課程先修課程的課程號(hào)CreditTi nyi nt學(xué)分Grade表的結(jié)構(gòu)為:字段名類型中文名備注SNOChar(8)學(xué)號(hào)學(xué)號(hào),參照 Student,與CNO1成主鍵CNOChar(4)】田千口 i=r. 課程號(hào)課程號(hào),參照 CourseScorceNumeric (4,1)成績(jī)CreditT

32、i nyi nt學(xué)分四、自定義數(shù)據(jù)類型(1) 使用 SQL Server Management Studio工具創(chuàng)建用戶自定義數(shù)據(jù)類型:studentNo , char(8)(2) 系統(tǒng)存儲(chǔ)過(guò)程sp_addtype創(chuàng)建用戶自定義數(shù)據(jù)類型:courseNo , char(4)(3) 修改MyDB數(shù)據(jù)庫(kù)中的各表,學(xué)號(hào)和課程號(hào)應(yīng)用自定義的數(shù)據(jù)類型。五、修改表結(jié)構(gòu)(1) 使用Alter修改Student表結(jié)構(gòu),使其增加一列 Department (系別)Char(12)。(2) 使用 SQL Server Management Studio工具刪除剛剛增加的Department。六、插入數(shù)據(jù)使用SQL

33、 Server Management Studio工具或insert into語(yǔ)句,分別向下列表格插入數(shù)據(jù)。(1)向表(Student )中插入數(shù)據(jù)SNOSNameSexClsNOStuAddrBirthdayHeightTotalCredit19920101王軍男CS01下關(guān)40#1.761019920102李杰男CS01江邊路96#1.72919920306王彤女MT04中央路94#1.65919940106吳杪女PH08蓮化小區(qū)74#1.604插入數(shù)據(jù)之后使用命令:Select * from Stude nt;檢查插入數(shù)據(jù)的正確性(2)向表(Class )中插入數(shù)據(jù)ClsNOClsNam

34、eDirectorSpecialtyCS01計(jì)算機(jī)一班王寧計(jì)算機(jī)應(yīng)用MT04數(shù)學(xué)四班陳晨數(shù)學(xué)PH08物理八班葛格物理插入數(shù)據(jù)之后使用命令:Select * from Class;檢查插入數(shù)據(jù)的正確性(3)向表(Course )中插入數(shù)據(jù)CNOCNamePCNOCredit0001數(shù)學(xué)Null60003計(jì)算機(jī)基礎(chǔ)000130007物理00014插入數(shù)據(jù)之后使用命令:Select * from Course;檢查插入數(shù)據(jù)的正確性(4)向表(Grade )中插入數(shù)據(jù)SNOCNOScoreCredit199201010001906199201010007864199201020001876199201

35、020003763199203060001876199203060003933199401060007854插入數(shù)據(jù)之后使用命令:Select * from Grade;檢查插入數(shù)據(jù)的正確性七、刪除表中的數(shù)據(jù)(1) 使用 SQL Server Management Studio 工具刪除課程號(hào)為 0001 的選課記錄。( 2)使用 T-SQL 語(yǔ)言刪除 Grade 表中學(xué)號(hào)為 19920101 的數(shù)據(jù)八、刪除表格( 1)使用 SQLSQL Server Management Studio 工具刪除 Class 表。( 2)使用 Drop Table 命令刪除 Grade 表。 *注意在刪除之前

36、,請(qǐng)將數(shù)據(jù)文件拷貝一個(gè)副本,已備以后實(shí)驗(yàn)使用。五、問題解答及實(shí)驗(yàn)結(jié)果1. 創(chuàng)建 student 表USE MyDBCREATE TABLE dbo.Student(SNO char(8) COLLATE Chinese_PRC_CI_AS NOT NULL primary key,SName varchar(50) COLLATE Chinese_PRC_CI_AS NOT NULL,Sex char(2) COLLATE Chinese_PRC_CI_AS NOT NULL,ClsNO char(6) COLLATE Chinese_PRC_CI_AS NOT NULL,StuAddr va

37、rchar(20) COLLATE Chinese_PRC_CI_AS NOT NULL,Brithday datetime NOT NULL,Height numeric(4, 2) NOT NULL,TotalCredit tinyint NOT NULL,)2. 新建 Class 表USE MyDBCREATE TABLE Class (ClsNO char(6) COLLATE Chinese_PRC_CI_AS NOT NULL PRIMARY KEY ,ClsName varchar(16) COLLATE Chinese_PRC_CI_AS NOT NULL,Director v

38、archar(50) COLLATE Chinese_PRC_CI_AS NOT NULL,Speicalty varchar(30) COLLATE Chinese_PRC_CI_AS NOT NULL,)3. 創(chuàng)建 course 表use MyDBcreate table Course(CNO char(4)Not NULL,CName varchar(16)NOT NULL,PCNO char(4),Credit Tinyint,Primary KEY(CNO)4. 創(chuàng)建 Grade 表use MyDBcreate table Grade(SNO char(8)Not NULL,CNO

39、char(4)NOT NULL,Scorce Numeric(4,1),Credit Tinyint,Primary KEY(SNO,CNO)5. 插入記錄 , 分別插入 Class , Student , Grade, Course 表 insert into Class values('CS01','計(jì)算機(jī)一班 ',' 王寧 ',' 計(jì)算機(jī)應(yīng)用 ')insert into Class values('MT04','數(shù)學(xué)四班 ',' 陳晨 ',' 數(shù)學(xué) ')inse

40、rt into Class values('PH08','物理八班 ',' 葛格 ',' 物理 ')insert into Student values('19920101','王軍','男','CS01',' 下關(guān) #','1976.12.21',1.76,10)insert into Student values('19920102','李杰','男','CS01',&

41、#39; 江邊路 #','1974.5.24',1.72,9)insert into Student values('19920306','王彤','女','MT04','中央路 #','1977.3.18',1.65,9)insert into Student values('19940106','吳杪','女','PH08','蓮化小區(qū) #','1979.4.8',1.60,4

42、)insert into Course values('0001','數(shù)學(xué)','',6)insert into Course values('0003','計(jì)算機(jī)基礎(chǔ) ','',3)insert into Course values('0007','物理 ','',4)insert into Grade values('19920101','0001',90,6) insert into Grade values(

43、9;19920101','0007',86,4) insert into Grade values('19920102','0001',87,6) insert into Grade values('19920102','0003',76,3) insert into Grade values('19920306','0001',87,6) insert into Grade values('19920306','0003',93,3) ins

44、ert into Grade values('19940106','0007',85,4)6. 添加類型 use MyDBexec sp_addtype studentNO,'char(8)','NOT NULL' exec sp_addtype courseNO,'char(4)','NOT NULL'7. 修改類型 use MyDBalter table Student ADD Department char(12);8. 刪除數(shù)據(jù) 19920101delete from grade where

45、 SNO='19920101'9. 刪除數(shù)據(jù)庫(kù)drop table Grade六、實(shí)驗(yàn)體會(huì)和收獲今天我學(xué)會(huì)了如何創(chuàng)建數(shù)據(jù)表,如何刪除數(shù)據(jù)表,往數(shù)據(jù)表里插入數(shù)據(jù),增刪改查都是數(shù)據(jù)庫(kù)的主要功 能,因上課聽的比較認(rèn)真,所以這些還都會(huì),基本沒有遇到什么問題。這些命令在以后做網(wǎng)站的時(shí)候也 會(huì)經(jīng)常用到,我認(rèn)為,增刪查才是數(shù)據(jù)庫(kù)的核心。這次的學(xué)習(xí)內(nèi)容是關(guān)鍵,這塊東西學(xué)好了,之后的才 能用的得心應(yīng)手。實(shí)驗(yàn)項(xiàng)目名稱:關(guān)系、索引和視圖實(shí)驗(yàn)學(xué)時(shí):2同組學(xué)生姓名: 實(shí)驗(yàn)地點(diǎn):1316實(shí)驗(yàn)日期: 201648實(shí)驗(yàn)成績(jī):批改教師:王預(yù)批改時(shí)間:2016410一、實(shí)驗(yàn)?zāi)康暮鸵?、理解關(guān)系圖的含義及用途,掌

46、握關(guān)系圖的創(chuàng)建方法;2、理解視圖的基本概念、種類及利用視圖修改數(shù)據(jù)時(shí)的限制,掌握視圖的創(chuàng)建方法;3、理解索引的基本概念及其優(yōu)缺點(diǎn),掌握創(chuàng)建索引的方法。二、實(shí)驗(yàn)設(shè)備、環(huán)境設(shè)備:奔騰W或奔騰W以上計(jì)算機(jī);環(huán)境: WINDOWS 2000 SERVER WINDOWS 2003 SERVERSQL Server 2005 中文版。三、實(shí)驗(yàn)步驟1、根據(jù)題目要求熟悉 SQL Server2005的各種管理工具;2、分析題意,重點(diǎn)分析題目要求并給出解決方法;3、按題目要求完成實(shí)際操作任務(wù),并將相關(guān)文檔資料保存在以自己學(xué)號(hào)命名的文件夾中;4、提交完成的實(shí)驗(yàn)結(jié)果。四、實(shí)驗(yàn)內(nèi)容1、創(chuàng)建關(guān)系圖根據(jù)實(shí)際情況,為 M

47、yDB數(shù)據(jù)庫(kù)創(chuàng)建關(guān)系圖。其中包括:Student、Course、Grade、Class四張表格,選擇表中相應(yīng)的屬性建立表間的關(guān)聯(lián)。2、視圖的創(chuàng)建、查詢、修改和刪除。(1) 創(chuàng)建一個(gè)名為 V_Student的視圖,以顯示學(xué)生的學(xué)號(hào)、姓名、性別和出生年月等基本信息。(2) 創(chuàng)建一個(gè)名為 V_grade的視圖,以顯示選修“ 0001 ”號(hào)課程的學(xué)生成績(jī)信息,如學(xué)號(hào)、姓名、課程名稱、成績(jī)和學(xué)分等。(3) 分別利用視圖 V_Student和V_grade作查詢和更新操作。(4) 修改V_Student視圖的定義,為其增加一個(gè)條件,使得該視圖只顯示“CS01'班學(xué)生的基本信息。(5)刪除名為 V_

48、Student的視圖。3、索引的創(chuàng)建、查看和刪除。(1 )為Student表創(chuàng)建一個(gè)基于總學(xué)分和學(xué)號(hào)的索引idex_total_xh,其中總學(xué)分按降序排列,當(dāng)總學(xué)分相同時(shí),按學(xué)號(hào)升序排列,填充因子為80%(2) 學(xué)生表創(chuàng)建一個(gè)基于班級(jí)和姓名的索引idex_clas_name,其中按班號(hào)按升序、學(xué)生姓名按降序排 列,填充因子為 70%(3)利用索引管理器查看索引。(4 )刪除索引idex_total_xh。再利用索引管理器查看索引。注:以上3題除了第一題,其余各題均需要使用工具和SQL語(yǔ)言兩種方法來(lái)完成。并將SQL語(yǔ)句按題號(hào)保存在自己的文件夾下的實(shí)驗(yàn)四目錄中。五、問題解答及實(shí)驗(yàn)結(jié)果2. 創(chuàng)建V_

49、student視圖create view V_student as select SNO as '學(xué)號(hào)',SName as ' 姓名',Sex as ' 性別',Brithday as '出生日期'from student3. 創(chuàng)建V_Grade視圖create view V_Grade as select Grade.SNO as '學(xué)號(hào)',SName as '姓名',CName as '課程名稱',Scorce as '成績(jī)',Grade.Credit as &#

50、39;學(xué)分'from Student ,Course,Grade where Grade.CN0='0001' and Grade.SNO=stude nt.SNO and Grade.CNO=Course.CNO4. 分別利用視圖V_Student和V_Grade做查詢更新操作select * from V_stude ntgoselect *from V Grade3瞬旦朋|鶴 L站性1:'l5iZ:d:-:壬至 君i liszoio?卓茅岀生曰翊1S5-1 i-2i OttOdjn.ocOl374-0?*OC:M-OOflOOimmnjitDiLiMo.o

51、ca ISTMM-OO-W-WOW戌1isSamm王軍2軸ao血數(shù)宇«70«1imb3(£B70£5. 創(chuàng)建索引idex_total_xh,學(xué)分按降序排列create INDEX idex_total_xhon student(TotalCredit Desc,SNO) with(fillfactor=80)6. 學(xué)生表創(chuàng)建一個(gè)基于班級(jí)和姓名的索引idex_clas_name ,其中按班號(hào)按升序、填充因子為70%create INDEX idex_class_ nameon Stude nt(ClsNO,SName DESC) with (fillfac

52、tor=70)學(xué)生姓名按降序排列,7.利用索引管理器查看索引。Exec sp_help in dex Stude ntp平flS12 idtx total xhiohgI皿letcd loudtcd on PRIMARYnanclusieicd located oninij&_ke>s CbNO. SNbikOTatalGfdtO.SMOPKSLidfiTtr unwue. prrranycced or PF.lMR £M08.刪除索引idex_total_xh 。再利用索引管理器查看索引。drop in dex idex_total_xh ON stude nt dr

53、op in dex idex_class_ name ON stude nt六、實(shí)驗(yàn)體會(huì)和收獲不知不覺,一個(gè)禮拜過(guò)去了,隨著時(shí)間的推移,實(shí)驗(yàn)的難度也越來(lái)了,現(xiàn)在,我學(xué)習(xí)如何 索引,視圖以及關(guān)系表的連接,雖然遇到了一點(diǎn)小小的問題,但還是解決了。這次的內(nèi)容承上啟下,關(guān)聯(lián)影響到數(shù) 據(jù)庫(kù)的整個(gè)結(jié)構(gòu),為以后建立一個(gè)完美的數(shù)據(jù)庫(kù)做好了充分的準(zhǔn)備。索引能方便隨時(shí)查閱自己的數(shù)據(jù)表,為以后的學(xué)習(xí)做好了鋪墊。實(shí)驗(yàn)項(xiàng)目名稱:約束、默認(rèn)和規(guī)則實(shí)驗(yàn)學(xué)時(shí): 2同組學(xué)生姓名: _實(shí)驗(yàn)地點(diǎn): 1316實(shí)驗(yàn)日期: 2016414實(shí)驗(yàn)成績(jī): 批改教師: 王預(yù)批改時(shí)間:2016417一、實(shí)驗(yàn)?zāi)康暮鸵?、 理解數(shù)據(jù)庫(kù)中的實(shí)體完整性

54、約束,掌握PRIMARY KEY UNIQUE NOT NULL等約束的創(chuàng)建方法;2、 理解參照完整性約束的概念,掌握FORENGN KEYU建方法;3、 理解域完整性的概念,掌握 CHECKS規(guī)則的創(chuàng)建方法;4、理解默認(rèn)值的概念,掌握默認(rèn)值和默認(rèn)對(duì)象的創(chuàng)建方法。二、實(shí)驗(yàn)設(shè)備、環(huán)境設(shè)備:奔騰W或奔騰W以上計(jì)算機(jī);環(huán)境: WINDOWS 2000 SERVE或 WINDOWS 2003 SERVERSQL Server 2005 中文版。三、實(shí)驗(yàn)步驟1、根據(jù)題目要求熟悉 SQL Server 2005的各種管理工具;2、分析題意,重點(diǎn)分析題目要求并給出解決方法;3、按題目要求完成實(shí)際操作任務(wù),并

55、將相關(guān)文檔資料保存在以自己學(xué)號(hào)命名的文件夾中;4、提交完成的實(shí)驗(yàn)結(jié)果。四、實(shí)驗(yàn)內(nèi)容1、約束在數(shù)據(jù)庫(kù)中的應(yīng)用(1 )用系統(tǒng)存儲(chǔ)過(guò)程 sp_helpconstraint查看student表的約束。(2) 在新建查詢中輸入插入一個(gè)學(xué)生信息的命令:in sert into stude nt(SNO,S name,Sex,ClsNo,StuAddr,Birthday,Height,TotalCredit) values('19920101',' 王軍','男','CS01',' 下關(guān) #','1976.12.21&#

56、39;,1.76,10) ,觀察其結(jié)果。修改SNOW值,將其值修改為19000001',其他的值保持不變,再插入一次,觀察其結(jié)果。(3) 修改student表,增加Check約束,約束名為 check_sex,使性別列只能接受"男”或"女” ,以 強(qiáng)制執(zhí)行域數(shù)據(jù)完整性。重做(1),觀察其結(jié)果。(4) 禁止 student 表中的 sex 歹U上的約束: alter table student nocheck constraint check_sex。(5) 刪除約束:alter table stude nt drop con strai nt check_sex。重

57、做(1)。(6) 利用關(guān)系圖,建立 student表與Course表與grade表的主外鍵約束。2、默認(rèn)的應(yīng)用(1 )創(chuàng)建默認(rèn)對(duì)象:default_birthday,默認(rèn)值為1982-1-1 '。(2) 利用系統(tǒng)存儲(chǔ)過(guò)程sp_bindefault將default_birthday 綁定到student表的Birthday 列上。(3) 利用系統(tǒng)存儲(chǔ)過(guò)程sp_unbindefault解除student表的Birthday列上的默認(rèn)值綁定。(4) 刪除默認(rèn)值。(5) 定義一個(gè)默認(rèn)值為 4的Default_Value ,并將它綁定到 Course表的Credit列上,綁定后給 Course 表插入數(shù)據(jù)行,觀察默認(rèn)值的設(shè)置情況,使用完畢后,解除并刪除綁定。實(shí)現(xiàn)過(guò)程要求使用SQL語(yǔ)句完 成。3、規(guī)則的應(yīng)用(1) 利用企業(yè)管理器創(chuàng)建規(guī)則:規(guī)則名為:rule_credit_ra nge,文本為: ran ge>=1 and ran g

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(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ì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論