實驗一-:-SQL-Server-數據庫的安裝和創(chuàng)建數據庫_第1頁
實驗一-:-SQL-Server-數據庫的安裝和創(chuàng)建數據庫_第2頁
實驗一-:-SQL-Server-數據庫的安裝和創(chuàng)建數據庫_第3頁
已閱讀5頁,還剩15頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、實驗一 :SQL Server數據庫的安裝和創(chuàng)建數據庫一、實驗目的:熟悉SQL Server 2000的安裝過程及運行環(huán)境,掌握企業(yè)管理器的使用二、實驗內容:在服務器的操作系統(tǒng)下安裝 SQL Server 2000版本的服務器端和客戶端軟件,在安 裝成功后,登錄SQL Server服務器,運行企業(yè)管理器和查詢分析器。三、實驗步驟:主珂蘭E1瑪璧| -I.捨怔山 *5(1. bDdJ農 U ic G實驗二:創(chuàng)建表及對表的基本操作一、實驗目的:掌握利用企業(yè)管理器創(chuàng)建數據庫、創(chuàng)建表的方法,理解關系型數據庫中的表的屬性 名、數據類型及表的主外鍵等二、實驗內容:創(chuàng)建一個名稱為factory的數據庫并建立

2、相關表三、實驗步驟:(1將主數據庫文件factory-data.MDF放置在E: DBF文件夾中,其文件大小自動 增長為按5MB增長。(2)將事務日志文件factory-data.MDF放置在E: DBF文件夾中,其文件大小自動 增長為按1MB增長。數據庫雇性 f«t9ry常規(guī)I數垢文件I爭笛日志I名稱(LD;| fa ctor J數據庫【未知)所有著(未知)創(chuàng)建日期:【未知)大?。海鐜洠┛捎每账荆篊未知)用戶數:t耒知)上扶懿據犀備松:無上次爭務日志備份:無堆護維護計劃無祥序規(guī)則名稱;K服務踣默認設置)| 確定 | 取消 I 幫助 I(3) 建立職工表 worker,其結構:職工

3、號:int,姓名:char (8),性別:char (2), 出生日期:datatime,黨員否:bit,參加工作:datatime,部門號:int。其中“職工號” 為主鍵。在worker表中輸入如下記錄:職工號d.efsult>濡表叫遼中的數據,悅營曇中、“ Uocilj"上1userid|username| sex丨喚|pQ5IworktmIdepi d1瘀1374-5- 71373-4-51930-3-1199E-4-41396-2-1195?-£-1 1 1999-6-30 1 1999-2-12 2 2003-6-1 2 2006-3-1 3 2D06-6-

4、1 2七農 麗輝艮買昊支 李工堇奇張李女男男女男女員處員n貝A員 黨群黨黨群黨m叱心叱尹中t在9衣嚴上)的新表數蛀型社度允許空useridchsr10usernamechar10畧建盟ckar10agedatetime&VP95char10Vworktmdatetime6Vdepi dchar10默認值 椿度 小數位數標識種孑啟 RowGuid排序規(guī)則(4) 建立部門表depart,其結構為:部門號:int,部門名:char (10)。其中,“部 門號”為主鍵。在depart表中輸入如下記錄:(5) 建立職工工資表salary,其結構為:職工號:int,姓名:char(8),出生日期:

5、 datatime,工資:dacimal(6, 1)。其中“職工號”和“日期”為主鍵。在 salary表中輸 入如下記錄:(6)建立 worker、depart和salary3個表之間的關系。實驗三:數據查詢一、實驗目的:掌握各種查詢語句的實現,包括一定程度的復雜查詢,掌握利用SQL Server 2000的查詢分析器書寫SQL語句進行各種查詢、插入記錄值及刪除記錄值二、實驗內容:在factory數據庫中實現查詢、插入數據、刪除數據(1)顯示所有職工的年齡。(2)求出各部門的黨員人數。(3)顯示所有職工的姓名和 2004年 1月份的工資數。(4)顯示所有職工的職工號、姓名和平均工資。(5)顯示

6、所有職工的職工號、姓名、部門名和 2004年 2 月份工資,并按部門名順序 排列。(6)顯示各部門和該部門的所有職工平均工資。(7)顯示所有平均工資高于 1200 的部門名和對應的平均工資。(8)顯示所有職工的的職工號、姓名和部門類型,其中財務處和人事處屬管理部門, 市場部屬市場部門(9)若存在職工號為 10 的職工,則顯示其工作部門名稱,否則顯示相應提示信息。(10)求出男女職工的平均工資,若男職工平均工資與女職工平均工資在1.50.8 之間,則顯示“男職工和女職工的平均工資差不多”的信息:否則,顯示“女職工比男職 工的工資高多了”的信息三、實驗步驟:select o.id,c.textfr

7、om sysobjects o inner JOIN syscomments c on o.id=c.idwhere o.type= 'p' and = 'oakland_authors'goalter proc oakland_authorswith ENCRYPTIONasselect au_fname,au_lname,address,city,zipfrom pubs.authorswhere state = 'ca'order by au_lname,au_fnamegoselect o.id ,c.textfrom sys

8、objects o inner joIn syscomments c on o.id=c.idwhere o.type='p' and ='oakland_authors'goselect customer.customerfrom customer,loanwhere loan.bank= 農' 業(yè)銀行 'and loan.laccount= customer.account實驗四 :索引的應用一、實驗目的: 利用企業(yè)管理器在數據庫的表上創(chuàng)建索引,理解創(chuàng)建索引的目的意義二、實驗內容:在 factory 數據庫的三章表中建立索引三、實

9、驗步驟:實驗五:視圖的應用一、實驗目的:通過企業(yè)管理器和查詢分析器建立視圖,掌握創(chuàng)建視圖的方法,理解利用視圖的便 利之處二、實驗內容:(1建立視圖viewl,查詢所有職工的職工號、姓名、部門名和2004年2月份的工資,并按部門名順序排序屮*斷和打ifg!嘟需*也/吊亦列帚世MT也UtR.t<111x *4 Ki s ' ?DQQ-3f-rdlpi >fvorbw蛀DEL垃ti:如屮*£心詛vVaP;JfxprlvDrli.«r1/u.«.«rc.-uriwvurLsi.2閉4 寸“戸匚也 他罠血hh 仁/電口屯 播4 * 口兒 ffb

10、» tfiricAff umtl* 尬 Ef4 -d.b& frOffahr- m«fLtAtpmu atP siiw-r rmm jnriJb: Twlser Uff db: 512ary irser l : - <bn rarter mmd "j(BE3. JTJIP 祁"#.冊1 (IF HK* vwlsr i A '業(yè)ti 4kp-i!fl 卄*i 電F:-SHE id=s. 5ilar7. 3:ad&t£ = 5317EET UiJuITZnE, 2:n4-<Wj ffl .Or .Dn LCEJ(

11、2) 建立視圖view2,查詢所有職工的職工號、姓名和平均工資(3) 建立視圖view3,查詢各部門和該部門的所有職工的平均工資(4) 顯示視圖view3的定義三、實驗步驟:select bankfrom depositegroup by bankhav ing sum(acco unt) >= all ( select sum(acco unt ) as sumc from depositewhere ddate like '2004%' group by bank)select sum(acco unt )from depositegroup by bankwhere

12、 ddate >= '2004-01-01'and ddate <= '2004-12-31'use studentgocreate view 數據庫系統(tǒng)概論成績 asselect a.sid,a.sname,ame,c.scorefrom t_stu as a inner join t_score as con a.sid=c.sid inner join t_course as bon b.cid=c.cidwhere ame=S(據庫系統(tǒng)概論'go select * from 數據庫系統(tǒng)概論成績order by score desc實驗

13、六:存儲過程與觸發(fā)器的應用一、實驗目的:掌握通過企業(yè)管理器和查詢分析器創(chuàng)建存儲過程與觸發(fā)器的方法,理解存儲過程與 觸發(fā)器的運行機理二、實驗內容:( 1)創(chuàng)建一個為 worker 表添加職工記錄的存儲過程 addworker( 2)創(chuàng)建一個存儲過程 delworker 刪除 worker 表中指定職工號的記錄( 3 顯示存儲過程 delworker( 4)刪除存儲過程 delworker 和 addworker(5) 在表depart上創(chuàng)建一個觸發(fā)器 depart_update當更改部門號時同步更改 worker 表中對應的部門號(6) 在表worker上創(chuàng)建一個觸發(fā)器 worker_delet

14、e,當刪除職工記錄時同步刪除 slalry 表中對應職工的工資記錄(7)刪除觸發(fā)器 depart_update和 worker_delete三、實驗步驟:if exists(select name from sysobjects where name= 'p1' and type = 'p')drop proc p1gocreate proc p1bankname varchar(50), count5y varchar(50) outputasselect count5y = bankfrom depositewhere bank = banknameand

15、dtype = ' 定期'godeclare bankn varchar(50)exec p1 ' 交通銀行 ',bankn output gocreate proc dbo.dt_addtosourcecontrol vchSourceSafeINI varchar(255) = '' vchProjectName varchar(255) ='', vchComment varchar(255) ='', vchLoginName varchar(255) ='', vchPassword va

16、rchar(255) =''as set nocount on declare iReturn int declare iObjectId int select iObjectId = 0 declare iStreamObjectId intselect iStreamObjectId = 0declare VSSGUID varchar(100)select VSSGUID = 'SQLVersionControl.VCS_SQL'declare vchDatabaseName varchar(255)select vchDatabaseName = db_

17、name()declare iReturnValue intselect iReturnValue = 0 declare iPropertyObjectId int declare vchParentId varchar(255) declare iObjectCount intselect iObjectCount = 0exec iReturn = sp_OACreate VSSGUID, iObjectId OUT if iReturn <> 0 GOTO E_OAError /* Create Project in SS */ exec iReturn = sp_OAMe

18、thod iObjectId,'AddProjectToSourceSafe',NULL, vchSourceSafeINI, vchProjectName output, SERVERNAME, vchDatabaseName, vchLoginName, vchPassword, vchCommentif iReturn <> 0 GOTO E_OAErrorexec iReturn = sp_OAGetProperty iObjectId, 'GetStreamObject', iStreamObjectId OUTif iReturn <

19、;> 0 GOTO E_OAError/* Set Database Properties */begin tran SetProperties/* add high level object */exec iPropertyObjectId = dbo.dt_adduserobject_vcs 'VCSProjectID'select vchParentId = CONVERT(varchar(255),iPropertyObjectId)execdbo.dt_setpropertybyidvchParentId , NULLexecdbo.dt_setproperty

20、byidvchProjectName , NULLexec dbo.dt_setpropertybyid vchSourceSafeINI , NULLexecdbo.dt_setpropertybyidSERVERNAME, NULLexecdbo.dt_setpropertybyidvchDatabaseName, NULLiPropertyObjectId, 'VCSProjectID',iPropertyObjectId, 'VCSProject' ,iPropertyObjectId, 'VCSSourceSafeINI' ,iProp

21、ertyObjectId, 'VCSSQLServer',iPropertyObjectId,'VCSSQLDatabase',if error <> 0 GOTO E_General_Errorcommit tran SetPropertiesdeclare cursorProcNames cursor forname) from sysobjectswhere type = 'P' andselect convert(varchar(255),name not like 'dt_%'open cursorProcN

22、ameswhile 1 = 1begindeclare vchProcName varchar(255)fetch next from cursorProcNames into vchProcName if fetch_status <> 0breakselect colid, text into #ProcLinesfrom syscommentswhere id = object_id(vchProcName) order by coliddeclare iCurProcLine intdeclare iProcLines intselect iCurProcLine = 1s

23、elect iProcLines = (select count(*) from #ProcLines)while iCurProcLine <= iProcLinesbegindeclare pos intselect pos = 1declare iCurLineSize intselect iCurLineSize = len(select text from #ProcLines where colid = iCurProcLine)while pos <= iCurLineSizebegindeclare vchProcLinePiece varchar(255) sel

24、ect vchProcLinePiece = convert(varchar(255), substring(select text from #ProcLines where colid iCurProcLine),pos, 255 )exec iReturn = sp_OAMethod iStreamObjectId, 'AddStream', iReturnValue OUT, vchProcLinePieceif iReturn <> 0 GOTO E_OAError select pos = pos + 255 endselect iCurProcLine

25、 = iCurProcLine + 1enddrop table #ProcLinesexec iReturn = sp_OAMethod iObjectId, 'CheckIn_StoredProcedure',NULL,sProjectName = vchProjectName, sSourceSafeINI = vchSourceSafeINI, sServerName = SERVERNAME, sDatabaseName = vchDatabaseName, sObjectName = vchProcName, sComment = vchComment, sLogi

26、nName = vchLoginName, sPassword = vchPassword, iVCSFlags = 0,iActionFlag = 0, sStream = ''if iReturn = 0 select iObjectCount = iObjectCount + 1 endCleanUp:close cursorProcNames deallocate cursorProcNames select vchProjectName select iObjectCount returnE_General_Error:/* this is an all or not

27、hing. No specific error messages */ goto CleanUpE_OAError:exec dbo.dt_displayoaerror iObjectId, iReturngoto CleanUpGO實驗七 : SQL 語句查詢功能一、實驗目的:掌握利用查詢分析器,使用SQL語句實現上面的各種功能的方法二、實驗內容:(1)刪除 factory 數據庫上各個表之間建立的關系(2)顯示各職工的工資記錄和相應的工資小計。(3)按性別和部門名的所有組合方式列出相應的平均工資。(4)在 worker 表中使用以下語句插入一個職工記錄: insert into depar

28、t values (5',設備處 ')在對 worker 和 depart 表進行完整外部連接顯示職工的職工號、姓名、和部門名, 然后刪除這兩個插入的記錄(5)顯示最高工資的職工的職工號、姓名、部門名、工資發(fā)放日期和工資(6)顯示最高工資的職工所在的的部門名(7)顯示所有平均工資低于全部平均工資的職工的職工號、姓名( 8)采用游標方式實現 (6)的功能( 9)采用游標方式實現 (7)的功能( 10)先顯示 worker 表中的職工人數,開始一個事務,插入一個職工記錄,再顯示 worker 表中的職工人數,回滾該事務,最后顯示 worker 表中的職工人數(11)在 worker

29、 表中的部門號列上建立一個非聚集索引,若該索引已存在,則刪除 后重建(12)在 salary 表的職工號列和日期列上創(chuàng)建聚集索引,并且強制唯一性三、實驗步驟:delete from employeeswhere year(birthdate) <2000select distinct customer.customerfrom customer,loanwhere customer.account= loan.laccountand loan.bank = '工商銀行 'and customer.customerid in( select customeridfrom c

30、ustomer,depositewhere customer.account= deposite.daccount and deposite.bank = ' 工商銀行 ')實驗八 :SQL Server 的管理及數據庫的備份與還原一、實驗目的:掌握 SQL Server 的管理及數據庫的備份與還原的方法,自動實現數據庫的管理二、實驗內容:( 1)創(chuàng)建一個登錄賬號 ABC/123456(2為factory數據庫中創(chuàng)建一個用戶帳號,并將其關聯到ABC登錄賬號中(3)用企業(yè)管理器對factory數據庫執(zhí)行完全備份和還原操作三、實驗步驟:常規(guī)備份 一 factos-jr議據庫-完全世

31、) 數據庫-差異叵 爭裁日恚Q文件和文件組舊;rc r 目的還原數皓庫選頂r在還原每十備份后均律出磁芾如果有)(E)F在還原毎嚀備份前提示專E在現肓頸據庫上強制還原舊將數返庫文件還原旳臣r原文艸名f:iMicrosoft SC|L_ServerMMSSQLdatfikMiera&oft SQL 5erv«rMSSQLdat.還原為f Microsoft SOIL 5&rvetM550LdataVactorjj_D.fAMiercsaft SQL SftfVMM5SQLd»taVaetorv_.-.恢復完成弒態(tài)席便數據庫可以繼續(xù)運行,但無法還原其它爭務日志il

32、l 廣使數據庫不再運行但網還原莖它爭務日志兇口 廣使數據庫為只讀但能還原耳它事筠日志(2Lf:Microsoft SQL £eiverMSSQLBACKJJFMJNLC_faetcry.DA'確定ili職消用幫助|實驗九:數據庫與開發(fā)工具的協同使用一、實驗目的:全面掌握數據庫的系統(tǒng)開發(fā)過程,通過實際例子深入理解數據庫的管理、使用和維 護技巧二、實驗內容:綜合前面所學習的數據庫知識,結合 VB開發(fā)一個學生檔案系統(tǒng),完成班級內的學生 個人資料管理、學習成績管理、學生成績統(tǒng)計、學期排名等日常教學中比較常用的功能, 主要功能如下:(1)學生個人資料管理(2)學生成績管理(3)學生成績統(tǒng)計、學期排名三、實驗步驟:部分代碼如下'將圖片保存到數據庫中Private Sub SaveToDB(ByRef PICField As ADODB.Field, Disk Stri ng)

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論