




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
《數據庫原理與應用》實驗指導書主編:李正茂合肥學院計算機科學與技術系7月
前言數據庫原理與應用課程實驗作為課程實踐性環節之一,是教學過程中必不可少的重要內容。通過實驗,使學生加深理解、驗證鞏固課堂教學內容;增強對數據庫管理系統某些知識的感性認識;培養學生理論與實踐相結合以及用所學知識分析和解決實際問題的能力。本書是《數據庫原理與應用》課程的實驗配套書,實驗分為課內必修內容。指導教師在每次實驗前應講清實驗目的、基本原理、實驗規定等,并指導學生做好實驗預習,并在規定的時間內完畢有關課程實驗。在實踐教學中著重培養運用所學知識分析和解決實際問題的能力,重視動手能力的提高。實驗課程教學中應在老師指導下,以學生為主體,充足調動學生的主動性和能動性,重視學生動手能力的培養。課內實驗后,學生將實驗成果等內容寫出實驗報告,應符合實驗教學的規定,并得到指導教師承認。實驗報告由個人獨立完畢,每人一份。報告應筆跡整潔,程序代碼、運行成果等符合規定。指導教師對每份實驗報告進行審視、評分。該實驗課程內容是對理論教學內容的應用與驗證。實驗成績=實驗報告成績(50%)+自主學習實驗項目1(20%)+自主學習實驗項目2(30%)。本書根據理論課的教學進度,共開設12個課內實驗項目(其中2個綜合性實驗項目)和2個自主學習實驗項目。
目錄TOC\h\z\t"標題1,1"實驗準備熟悉上機環境 4實驗一建立數據庫 19實驗二建立數據表 22實驗三修改表和數據完整性 26實驗四數據操作及完整性約束 29實驗五SQL數據查詢一 32實驗六SQL數據查詢二 35實驗七視圖的應用 38實驗八游標的應用 40實驗九存儲過程及應用 43實驗十觸發器及應用 46實驗十一顧客管理和權限管理 48實驗十二數據庫概念數據模型和邏輯數據模型設計 52自主實驗項目1:實驗考核 54自主實驗項目2:按照規定設計并實現實驗方案 55
實驗準備熟悉上機環境一、安裝前準備:1.SQLServer的版本SQLServer重要有三個版本:精簡版(32位),SQL速成版(32位),工作組版(32位和64位),網絡版(32位和64位),公司版和開發人員版(32位和64位)。大多數公司選擇公司版,由于它們能夠在生產服務器環境中安裝和使用。2.系統需求2.1安裝硬件和軟件規定:表1SQLSERVER對硬件和軟件的規定組件規定框架SQLServer安裝程序安裝該產品所需的下列軟件組件:.NETFramework3.5SP1SQLServerNativeClientSQLServer安裝程序支持文獻軟件SQLServer安裝程序規定使用MicrosoftWindowsInstaller4.5或更高版本安裝了所需的組件后,SQLServer安裝程序將驗證要安裝SQLServer的計算機與否也滿足成功安裝所需的全部其它規定。有關具體信息,請參閱系統配備檢查器的檢查參數網絡軟件SQLServer64位版本的網絡軟件規定與32位版本的規定相似。支持的操作系統都含有內置網絡軟件。獨立的命名實例和默認實例支持下列網絡合同:SharedmemoryNamedPipesTCP/IPVIA注意:障轉移群集不支持Sharedmemory和VIA。在以WindowsServerStandard、Enterprise和DataCenter版本中的Hyper-V角色運行的虛擬機環境中支持SQLServer。虛擬機必須運行本主題稍后部分中列出的特定SQLServer版本所支持的操作系統。除了父分區所需的資源以外,還必須為每個虛擬機(子分區)的SQLServer實例提供足夠的解決器資源、內存和磁盤資源。具體規定在本主題的稍后部分中列出。在WindowsServer上的Hyper-V角色中,最多可覺得運行WindowsServer32位或64位版本的虛擬機分派四個虛擬解決器。最多可覺得運行WindowsServer32位版本的虛擬計算機分派2個虛擬解決器。對于承載其它操作系統的虛擬計算機,最多可覺得虛擬計算機分派一種虛擬解決器。注意:建議在關閉或終止虛擬機之前先關閉SQLServer。在Hyper-V環境中不支持來賓故障轉移群集(在SQLServer中配備故障轉移群集)。有關WindowsServer中Hyper-V角色的具體信息,請參閱WindowsServer網站。有關涉及Hyper-V在內的虛擬化支持的具體信息,請參閱ServerVirtualizationValidationProgram(服務器虛擬化驗證計劃)。Internet軟件全部的SQLServer安裝都需要使用MicrosoftInternetExplorer6SP1或更高版本。Microsoft管理控制臺(MMC)、SQLServerManagementStudio、BusinessIntelligenceDevelopmentStudio、ReportingServices的報表設計器組件和HTML協助都需要InternetExplorer6SP1或更高版本。硬盤磁盤空間規定將隨所安裝的SQLServer組件不同而發生變化。有關具體信息,請參閱本主題稍后部分中的硬盤空間規定。顯示屏SQLServer圖形工具需要使用VGA或更高分辨率:分辨率最少為1,024x768像素。2.2操作系統與SQLServer下表列出了SQLServerEnterprise(64位)x64的系統規定。表2系統規定組件規定解決器解決器類型:最低:AMDOpteron、AMDAthlon64、支持IntelEM64T的IntelXeon和支持EM64T的IntelPentiumIV解決器速度:建議1.4GHz或更快操作系統WindowsServer64位x64StandardWindowsServer64位x64DataCenterWindowsServer64位x64EnterpriseWindowsServerSP264位EnterpriseWindowsServerSP264位x64Standard內存RAM:最小:512MB建議2.048GB或更大最大:操作系統最大內存注意:整個安裝過程建議大家關閉殺毒軟件。二、sql安裝過程1、安裝首先,在安裝文獻setup.exe上,單擊鼠標右鍵選擇"以管理員的身份運行",以下圖所示:圖1設立安裝文獻的權限單擊安裝光盤中的setup.exe安裝文獻,打開以下所示的"SQLServer安裝中心"對話框:圖2打開的"SQLServer安裝中心"對話框圖3準備安裝程序在打開的"SQLServer安裝程序"對話框中,出現"安裝程序支持規則"選項,能夠看到,某些檢查已經通過了,單擊擬定按鈕,進入到下一步,如圖所示:圖4"安裝程序支持規則"選項單擊擬定按鈕之后,出現輸入產品密鑰的提示,輸入對應密鑰,單擊下一步按鈕繼續安裝,如圖所示:圖5輸入密鑰在接下來的許可條款頁面中選擇"我接受許可條款"選項,單擊下一步按鈕繼續安裝,如圖所示:圖6選擇"我接受許可條款"選項在出現的"安裝程序支持文獻"頁面中,單擊安裝按鈕繼續,如圖所示:圖7"安裝程序支持文獻"頁面安裝程序支持文獻的過程如圖所示:之后出現了"安裝程序支持規則"頁面,只有符合規則才干繼續安裝,單擊下一步按鈕繼續安裝,如圖所示:圖8"安裝程序支持規則"頁面在"功效選擇"頁面中,單擊全選按鈕,并設立共享的功效目錄,單擊下一步繼續,如圖所示:圖9"功效選擇"頁面在"實例配備"頁面中,選擇默認實例,并設立是實例的根目錄,單擊下一步按鈕繼續,如圖所示:圖10"實例配備"頁面在"磁盤空間規定"頁面中,顯示了安裝軟件所需的空間,單擊下一步繼續,如圖所示:圖11"磁盤空間規定"頁面在"服務器配備"頁面中,根據需要進行設立,單擊下一步按鈕繼續安裝,如圖所示:圖11"服務器配備"頁面在"數據庫引擎配備"頁面中,設立身份驗證模式為混合模式,輸入數據庫管理員的密碼,即sa顧客的密碼,并添加現在顧客,單擊下一步按鈕繼續安裝,如圖所示:圖11"數據庫引擎配備"頁面在"AnalysisServices配備"頁面中,添加現在顧客,單擊下一步按鈕,如圖所示:圖12"AnalysisServices配備"頁面在"ReportingServices配備"頁面中,按照默認的設立,單擊下一步按鈕,如圖所示:圖13"ReportingServices配備"頁面在"錯誤和使用狀況報告"頁面中,根據自己的需要進行選擇,單擊下一步按鈕繼續安裝,如圖所示:圖14"錯誤和使用狀況報告"頁面在"安裝規則"頁面中,如果全部通過,單擊下一步按鈕繼續,如圖所示:圖15"安裝規則"頁面在"準備安裝"頁面中,看到了要安裝的功效選項,單擊下一步繼續安裝,如圖所示:圖16"準備安裝"頁面在"安裝進度"頁面中,能夠看到正在安裝SQLServer,如圖所示:圖17"安裝進度"頁面通過漫長的等待,SQLServer安裝過程完畢,現在沒有錯誤,我的第一次錯誤是在上邊的那個環節出現的,單擊下一步按鈕繼續,如圖所示:圖18安裝完畢頁面在"完畢"頁面中,能夠看到"SQLServer安裝已成功完畢"的提示,單擊關閉按鈕結束安裝,如圖所示:圖19安裝完畢頁面啟動SQLServer,選擇開始菜單中的MicrosoftSQLServer下的SQLServer配備管理器,啟動SQLServer服務,如圖所示:圖19啟動軟件服務界面圖20啟動集成工具界面最后啟動微軟為我們提供的集成工具,按照上圖中的選擇SQLServerManagerStudio選項打開,輸入顧客名和密碼進入,如圖所示:圖21啟動軟件界面圖22進入軟件界面到此安裝工作已經全部結束。
實驗一建立數據庫一、預習規定1.復習和掌握教材2.1,10.1節內容2.預習SQLServer軟件的使用和SQLServer中數據庫的存儲構造。3.預習SQLServer數據庫中的建立辦法。4.準備好上機所需的程序。二、實驗目的1.理解SQLServer數據庫的存儲構造;2.掌握SQLServer數據庫的建立辦法。三、實驗內容1.創立數據庫1)創立一種名稱為“test1_學號”的數據庫,該數據庫的主數據文獻邏輯名稱為“test1_學號_order_dat”,物理文獻名為“test1_學號_orderdat.mdf”,初始大小為10MB,最大尺寸為50MB,增量為5MB;數據庫的事務日志文獻邏輯名稱為“test1_學號_order_log”,物理文獻名為“test1_學號_orderlog.ldf”,初始大小為5MB,最大尺寸為25MB,增量為5MB。并且規定主數據文獻和事務日志文獻的物理位置在不同的硬盤上。2)創立一種指定多個數據文獻和日志文獻的數據庫。該數據庫名稱為“test2_學號”,有1個10MB和1個20MB的數據文獻和1個10MB的事務日志文獻。數據文獻邏輯名稱為“test2_1_學號”和“test2_2_學號”,物理文獻名為“test2_1_學號.mdf”和“test2_2_學號.ndf”。主文獻是“test2_1_學號”,由primary指定,兩個數據文獻的最大尺寸分別為無限大和100MB,增加速度分別為10%和1MB。事務日志文獻的邏輯名為“test2_log1”,物理文獻名為“test2_log1.ldf”,最大尺寸均為50MB,文獻增加速度為1MB。2.修改數據庫1)修改建立的“test1_學號”數據庫,為之添加一種5MB大小的新數據文獻。2)修改“test1_學號”數據庫,將其中的主數據文獻增加一種5MB的存儲空間。3.刪除建立的數據庫。四、實驗原理1.建立數據庫的命令格式:CREATEDATABASEdatabase-nameON<filespec>[,<filespec>,…][,FILEGROUPfilegroup-name<filespec>[,<filespec>,…]][LOGON<filespec>[,<filespec>,2.修改數據庫的命令格式:ALTERDATABASEdatabase{ADDFILE<filespec>[,…n]|ADDLOGFILE<filespec>[,…n]|ADDFILEGROUPfilegroup-name|REMOVEFILElogical_file_name|MODIFYFILE<filespec>}3.刪除數據庫的命令格式:DROPDATABASEdatabase-name五、實驗儀器、設備1.軟件一一SQLServer;六、實驗注意事項1.建立和修改數據庫,需要是dbcreator固定服務器角色的組員,或被顯式得授予CREATEDATABASE權限。七、實驗辦法及其環節上機實驗時應當一人一組,獨立上機。對出現的問題要善于自己發現問題所在,獨立解決。上機環節:1.調出SQLServer軟件的顧客界面,進入SQLServerManagementStudio。2.輸入自己編好的程序。3.檢查已輸入的程序對的與否。4.運行程序,并分析運行成果與否合理和對的。在運行時要注意當輸入不同的數據時所得到的成果與否對的。5.輸出程序清單和運行成果。八、實驗報告規定實驗報告應涉及下列內容1.實驗題目2.實驗目的3.實驗內容4.實驗過程5.實驗成果分析(涉及實驗的成果和其中的實驗數據以及中間的調試過程)6.實驗總結九、思考題1.SQLServer的CREATEDATABASE命令在創立數據庫時是如何申請物理存儲空間?
實驗二建立數據表一、預習規定1.復習和掌握教材5.1節內容。2.預習SQLServer軟件的使用和SQLServer中數據定義功效。3.預習SQLServer數據表的基本操作。4.準備好上機所需的程序。二、實驗目的1.掌握建立表的基本操作。2.掌握數據完整性的功效,加深對數據完整性的理解。三、實驗內容1.準備實驗環境:使用實驗一的技術建立名稱為“學生管理”數據庫。2.建立如圖所示的訂單管理數據庫中的5張表,同時完畢數據完整性的定義(實體完整性、參考完整性和顧客定義的域完整性),各個表的具體描述以下:院系字段名數據類型主核心字外部核心字參考的表取值闡明編號短整數Yes名稱20個字符唯一,不允許為空值負責人10個字符辦公地點20個字符學生字段名數據類型主核心字外部核心字參考的表取值闡明學號8個字符Yes院系短整數Yes院系表的編號字段姓名10個字符不允許空值性別2個字符必須取值“男”或“女”生源6個字符狀態4個字符教師字段名數據類型主核心字外部核心字參考的表取值闡明教師編號8個字符Yes院系短整數Yes院系表的編號字段姓名10個字符不允許為空值性別2個字符必須取值“男”或“女”職稱6個字符取值“專家”、“副專家”、“講師”或“助教”專業10個字符課程字段名數據類型主核心字外部核心字參考的表取值闡明課程編號8個字符Yes課程名稱20個字符不允許為空值責任教師8個字符Yes教師表的教師編號字段學時短整數不允許為空值課程性質10個字符取值為公共基礎、專業基礎、專業選修和任意選修選課字段名數據類型主核心字外部核心字參考的表取值闡明學號8個字符YesYes學生表的學號字段課程編號8個字符YesYes課程表的課程編號字段成績短整型取值在0~100之間,并且默認為空值編號編號名稱負責人辦公地點院系學號院系姓名教師編號號院系性別職稱學生教師學號課程編號成績性別生源狀態姓名專業課程編號號課程名稱學時課程性質責任教師課程選課選課圖1學生管理數據庫四、實驗原理建立基本表構造的命令:CREATETABLE[schema_name].table_name({<column_definition>|<computed_column_definition>}[<table_constraint>][,…n])其中列定義(column_definition)的基本格式是:column_name<data_type>[NULL|NOTNULL][[CONSTRAINTconstraint_name]PRIMARYKEY|UNIQUE|[FOREIGNKEY]REFERENCES[schema_name.]referenced_table_name[(ref_column)][ONDELETE{NOACTION|CASCADE|SETNULL|SETDEFAULT}][ONUPDATE{NOACTION|CASCADE|SETNULL|SETDEFAULT}]|CHECK(logical_expression)][DEFAULTconstraint_expression]如果需要還能夠定義計算列(computed_column_definition)和表級約束(table_constraint)空值約束NOTNULL和NULL主核心字約束PRIMARYKEY惟一性約束UNIQUE參考完整性約束FOREGINKEY默認值定義DEFAULT取值范疇約束CHECK五、實驗儀器、設備1.軟件一一SQLServer;六、實驗注意事項1.建立表需要含有CREATETABLE的權限。七、實驗辦法及其環節上機實驗時應當一人一組,獨立上機。對出現的問題要善于自己發現問題所在,獨立解決。上機環節:1.調出SQLServer軟件的顧客界面,進入SQLSERVERMANAGEMENTSTUDIO。2.輸入自己編好的程序。3.檢查已輸入的程序對的與否。4.運行程序,并分析運行成果與否合理和對的。在運行時要注意當輸入不同的數據時所得到的成果與否對的。5.輸出程序清單和運行成果。八、實驗報告規定實驗報告應涉及下列內容1.實驗題目2.實驗目的3.實驗內容4.實驗過程5.實驗成果分析(涉及實驗的成果和其中的實驗數據以及中間的調試過程)6.實驗總結九、思考題1.SQL所支持的關系數據庫的三級模式構造是什么?基本表對應什么模式?
實驗三修改表和數據完整性一、預習規定1.復習和掌握教材5.1節內容。2.預習SQLServer軟件的使用和SQLServer中數據定義功效。3.預習SQLServer數據表的基本操作。4.準備好上機所需的程序。二、實驗目的1.掌握修改表的構造的基本操作。2.索引的建立辦法。3.掌握數據完整性的功效,加深對數據完整性的理解。三、實驗內容1.在實驗二所建立的數據表基礎上。2.修改表的構造,具體規定以下:為學生表增加一種“平均成績”字段,類型為短整型,默認是空值。為課程表的“學時”字段重新定義約束:取值為8的倍數,不允許為空值。將院系表的“名稱”字段的類型修改為varchar(30)。為教師表增加一種“工資”字段,類型為5位整數、2位小數的數值型。3.分別建立以下索引在教師表的姓名字段上建立普通升序索引。在課程表的課程名稱字段上建立惟一索引。在學生表的姓名字段上建立聚集索引。在選課表的學號(升序)、成績(升序)和課程(降序)三個字段上建立一種普通索引。四、實驗原理1.修改表構造的命令:ALTERTABLEschema_name.table_name{ALTERCOLUMNcolumn_name<data_type>[NULL|NOTNULL]|ADD<column_definition>|<computed_column_definition>|<table_constraint>|DROP[CONSTRAINT]constraint_nameCOLUMNcolumn_name}2.刪除數據表的命令格式:DROPTABLEtable-name3.建立索引命令:CREATE[UNIQUE][CLUSTERED|NONCLUSTERED]INDEX<索引名>ON<表名或視圖名>(<列名>[ASC|DESC][,…n])[ON{<分區>(<列名>)|<文獻組>}]五、實驗儀器、設備1.軟件一一SQLServer;六、實驗注意事項1.修改表的構造,建立索引需要含有CREATETABLE的權限。七、實驗辦法及其環節上機實驗時應當一人一組,獨立上機。對出現的問題要善于自己發現問題所在,獨立解決。上機環節:1.調出SQLServer軟件的顧客界面,進入SQLSERVERMANAGEMENTSTUDIO。2.輸入自己編好的程序。3.檢查已輸入的程序對的與否。4.運行程序,并分析運行成果與否合理和對的。在運行時要注意當輸入不同的數據時所得到的成果與否對的。5.輸出程序清單和運行成果。八、實驗報告規定實驗報告應涉及下列內容1.實驗題目2.實驗目的3.實驗內容4.實驗過程5.實驗成果分析(涉及實驗的成果和其中的實驗數據以及中間的調試過程)6.實驗總結九、思考題1.在進行數據表建立和修改操作時,需要實現哪些完整性約束?請結合自己的實驗過程進行描述。
實驗四數據操作及完整性約束一、預習規定1.復習和掌握教材5.2節內容。2.預習SQLServer軟件的使用和SQLServer中數據操作功效。3.準備好上機所需的程序。二、實驗目的1.掌握對表中數據的插入、刪除、修改等操作;2.進一步體會數據完整性及約束的作用。三、實驗內容在實驗三建立的表的基礎上:自行設計各個表的統計,其中院系表最少10條統計、學生表最少30條統計、課程表最少10條統計、教師表最少10條統計、選課表最少50條統計。設計一組統計執行插入操作,規定分別設計若干違反實體完整性規則、參考完整性規則和顧客完整性規則的插入操作,并分析因素。設計幾個刪除操作,體會執行刪除操作時檢查參考完整性規則的效果(規定涉及回絕刪除、空值刪除和級聯刪除等不同的解決方式)。設計一組更新操作,體會執行更新操作時檢查參考完整性規則、參考完整性規則和顧客完整性規則的效果。在實驗報告中要給出具體的統計和設計的操作,并針對多個數據完整性檢查給出具體的分析和討論。四、實驗原理1.插入語句的命令格式:INSERTINTOschema_name.table_or_view_name[(column_list)]VALUES({expression|DEFAULT|NULL)}[,…n])2.更新語句的命令格式:UPDATEschema_name.table_or_view_nameSETcolumn_name={expression|DEFALUT|NULL}[,…n][WHERE<search_condition>]3.刪除語句的命令格式:DELETE[FROM]schema_name.table_or_view_name[WHERE<search_condition>]五、實驗儀器、設備1.軟件一一SQLServer;六、實驗注意事項1.完畢數據的插入、更新和刪除操作,需要在表上含有執行INSERT、UPDATE和DELETE語句的權限。七、實驗辦法及其環節上機實驗時應當一人一組,獨立上機。對出現的問題要善于自己發現問題所在,獨立解決。上機環節:1.調出SQLServer軟件的顧客界面,進入SQLSERVERMANAGEMENTSTUDIO。2.輸入自己編好的程序。3.檢查已輸入的程序對的與否。4.運行程序,并分析運行成果與否合理和對的。在運行時要注意當輸入不同的數據時所得到的成果與否對的。5.輸出程序清單和運行成果。八、實驗報告規定實驗報告應涉及下列內容1.實驗題目2.實驗目的3.實驗內容4.實驗過程5.實驗成果分析(涉及實驗的成果和其中的實驗數據以及中間的調試過程)6.實驗總結九、思考題1.執行SQL的數據操作時是如何檢查完整性規則的?
實驗五SQL數據查詢一(普通簡樸查詢和連接查詢)一、預習規定1.復習和掌握教材6.1~6.6節內容。2.預習SQLServer軟件的使用和SQLServer中數據操作功效。3.準備好上機所需的程序。二、實驗目的1.純熟掌握SQLSELECT語句,能運用查詢語句完畢多個查詢。三、實驗內容在實驗三和實驗四的基礎上完畢查詢操作,將題目中的x,y等具體化:普通簡樸查詢不帶條件的查詢指定字段(考慮去掉和不去掉重復值兩種狀況)。查詢某個表中的全部統計。使用單個條件的簡樸查詢。使用多個條件(AND關系)的查詢。使用多個條件(OR關系)的查詢。使用多個條件(混合AND和OR關系)的查詢。使用帶NOT運算的查詢。使用BETWEEN···AND···的查詢。使用NOT···BETWEEN···AND···的查詢。使用LIKE運算符的字符串匹配查詢。使用LIKE運算符的模板匹配查詢。查詢空值和非空值的查詢成果規定排序的查詢查詢成果按多列排序,并分別規定升序和降序的查詢。使用TOP顯示前若干統計的查詢。使用TOP顯示前若干統計的查詢,如果有滿足條件的并列統計一并顯示。2、連接查詢兩個關系的連接查詢。帶其它查詢條件的兩個關系的連接查詢。多個關系(三個以上)的連接查詢。兩個關系的廣義笛卡爾積運算成果。根據兩個關系的廣義笛卡爾積運算成果得到兩個關系進行自然連接的成果。查詢教師-課程信息,查詢成果中涉及教師姓名、職稱、課程名稱和課程性質等4個字段。查詢教師-課程信息,查詢成果中涉及教師姓名、職稱、課程名稱和課程性質等4個字段,規定成果中列出全部教師信息(即涉及不是任何課程責任教師的教師信息)。查詢教師-課程信息,查詢成果中涉及教師姓名、職稱、課程名稱和課程性質等4個字段,規定成果中能夠反映現在沒有擬定責任教師的課程信息。查詢教師-課程信息,查詢成果中涉及教師姓名、職稱、課程名稱和課程性質等4個字段,規定成果中既能夠反映現在不是責任教師的教師信息,又能反映現在沒有擬定責任教師的課程信息。提示:(22)~(25)分別用內連接、左連接、右連接完畢,分析它們的效果。四、實驗原理1.SQLSELECT查詢語句的普通格式是:SELECT[ALL|DISTINCT]<體現式>[,<體現式>…]FROM<表名>[,<表名>…][WHERE<邏輯體現式>][GROUPBY<列名>[,<列名>…][HAVING<謂詞>]][ORDERBY<列名>[ASC|DESC],[<列名>[ASC|DESC]]…]五、實驗儀器、設備1.軟件一一SQLServer;六、實驗注意事項1.執行SQLSERVER語句,需要在表上有SELECT的權限。七、實驗辦法及其環節上機實驗時應當一人一組,獨立上機。對出現的問題要善于自己發現問題所在,獨立解決。上機環節:1.調出SQLServer軟件的顧客界面,進入SQLSERVERMANAGEMENTSTUDIO。2.輸入自己編好的程序。3.檢查已輸入的程序對的與否。4.運行程序,并分析運行成果與否合理和對的。在運行時要注意當輸入不同的數據時所得到的成果與否對的。5.輸出程序清單和運行成果。八、實驗報告規定實驗報告應涉及下列內容1.實驗題目2.實驗目的3.實驗內容4.實驗過程5.實驗成果分析(涉及實驗的成果和其中的實驗數據以及中間的調試過程)6.實驗總結九、思考題1.對于內連接、左連接、右連接查詢的區別是什么?
實驗六SQL數據查詢二(嵌套查詢和匯總分組查詢)一、預習規定1.復習和掌握教材6.1~6.6節內容。2.預習SQLServer軟件的使用和SQLServer中數據操作功效。3.準備好上機所需的程序。二、實驗目的1.純熟掌握SQLSELECT語句,能運用查詢語句完畢多個查詢。三、實驗內容在實驗三和實驗四的基礎上完畢查詢操作,將題目中的x,y等具體化:1、嵌套查詢(注意使用ANY、ALL和EXISTS)使用IN運算的簡樸嵌套查詢。使用NOTIN運算的簡樸嵌套查詢。使用關系運算(如等于)的簡樸嵌套查詢。使用ANY或SOME的簡樸嵌套查詢。使用ALL的簡樸嵌套查詢。查詢院系名稱含“計算機”、職稱為專家、所負責教程為必修課的教師姓名、職稱、課程名稱和課程學時等信息(分別用嵌套查詢和連接查詢完畢,分析各自的效率)。設計兩個內外層互有關的嵌套查詢。使用EXISTS的嵌套查詢。使用NOTEXISTS的嵌套查詢。2、匯總和分組查詢使用COUNT統計數目的查詢。使用SUM計算累計的查詢。一次完畢求和、計數、計算平均值的查詢。查詢全部課程的成績都不小于60分的學生的平均分最高的學生信息。查詢數據庫課程的成績不小于70分的、全部課程平均分最高的學生信息。查詢每個學生的平均成績。查詢每個學生的全部成績的最高成績、最低成績、平均成績和所考課程的門數。查詢最少有10門必修課程考試成績的每個學生的平均成績。設計2個使用COMPUTE···BY和COMPUTE的查詢。設計1個使用COMPUTE的查詢。設計1個使用COMPUTE···BY的查詢。四、實驗原理1.SQLSELECT查詢語句的普通格式是:SELECT[ALL|DISTINCT]<體現式>[,<體現式>…]FROM<表名>[,<表名>…][WHERE<邏輯體現式>][GROUPBY<列名>[,<列名>…][HAVING<謂詞>]][ORDERBY<列名>[ASC|DESC],[<列名>[ASC|DESC]]…]五、實驗儀器、設備1.軟件一一SQLServer;六、實驗注意事項1.執行SQLSERVER語句,需要在表上有SELECT的權限。七、實驗辦法及其環節上機實驗時應當一人一組,獨立上機。對出現的問題要善于自己發現問題所在,獨立解決。上機環節:1.調出SQLServer軟件的顧客界面,進入SQLSERVERMANAGEMENTSTUDIO。2.輸入自己編好的程序。3.檢查已輸入的程序對的與否。4.運行程序,并分析運行成果與否合理和對的。在運行時要注意當輸入不同的數據時所得到的成果與否對的。5.輸出程序清單和運行成果。八、實驗報告規定實驗報告應涉及下列內容1.實驗題目2.實驗目的3.實驗內容4.實驗過程5.實驗成果分析(涉及實驗的成果和其中的實驗數據以及中間的調試過程)6.實驗總結九、思考題1.連接查詢和嵌套查詢的區別是什么?如何轉化使用?
實驗七視圖的應用一、預習規定1.復習和掌握教材6.7節內容。2.預習SQLServer軟件的使用和SQLServer中視圖操作功效和使用辦法。3.準備好上機所需的程序。二、實驗目的1.理解視圖的概念;2.掌握視圖的使用辦法。3.理解視圖和基本表的異同之處。三、實驗內容1.參考實驗五中完畢的查詢,按以下規定設計和建立視圖:基于單個表按投影操作定義視圖。基于單個表按選擇操作定義視圖。基于單個表按選擇和投影操作定義視圖。基于多個表根據連接操作定義視圖。基于多個表根據嵌套操作定義視圖。定義含有虛字段的視圖。2.分別在定義的視圖設計3種查詢(涉及基于視圖和基本表的普通、連接和嵌套查詢)。3.在定義的視圖上分別進行插入、更新和刪除操作,分狀況討論哪些操作能夠成功完畢,哪些操作不能完畢,并分析因素。3.在實驗報告中要給出具體的視圖定義規定和操作規定,并針對多個狀況做出具體的分析和討論。四、實驗原理1.視圖是用SQLSELECT查詢定義的,創立視圖命令格式以下:CREATEVIEW<視圖名>AS<SELECT-查詢塊>2.刪除視圖的命令格式以下:DROPVIEW<視圖名>五、實驗儀器、設備1.軟件一一SQLServer;六、實驗注意事項1.定義視圖需要有執行CREATEVIEW命令的權限。七、實驗辦法及其環節上機實驗時應當一人一組,獨立上機。對出現的問題要善于自己發現問題所在,獨立解決。上機環節:1.調出SQLServer軟件的顧客界面,進入SQLSERVERMANAGEMENTSTUDIO。2.輸入自己編好的程序。3.檢查已輸入的程序對的與否。4.運行程序,并分析運行成果與否合理和對的。在運行時要注意當輸入不同的數據時所得到的成果與否對的。5.輸出程序清單和運行成果。八、實驗報告規定實驗報告應涉及下列內容1.實驗題目2.實驗目的3.實驗內容4.實驗過程5.實驗成果分析(涉及實驗的成果和其中的實驗數據以及中間的調試過程)6.實驗總結九、思考題1.視圖的含義和作用是什么?它與基本表的區別是什么?
實驗八游標的應用一、預習規定1.復習和掌握教材7.1節內容。2.預習SQLServer軟件的使用和SQLServer中游標的定義和使用辦法。3.準備好上機所需的程序。二、實驗目的1.理解SQL的宿主使用方式。2.掌握游標的使用辦法。三、實驗內容1.參考例7-3建立一種嵌套游標應用,其功效是按學號升序列出全體學生信息(學號、姓名、院系名稱)及其所修課程的名稱和考試成績信息(基于前面實驗建立的表和插入的數據)2.按規定逐個讀出游標中的統計,并在界面上顯示。四、實驗原理1.定義游標的SQL語句的普通格式是:DECLARE<游標名>[INSENSITIVE][SCROLL]CURSORFOR<SELECT-查詢塊>[FOR{READONLY|UPDATE[OF<列名>[,<列名>…]]}]2.打開游標的SQL語句的普通格式是:OPEN<游標名>3.從游標中讀統計的SQL語句的普通格式是:FETCH[[NEXT|PRIOR|FIRST|LAST|ABSOLUTEn|RELATIVEn]FROM]<游標名>[INTO:<主變量1>,:<主變量2>…]4.關閉游標的SQL語句的普通格式是:CLOSE<游標名>5.釋放游標DEALLOCATE<游標名>6.使用游標的UPDATE命令的格式是:UPDATE<表名>SET<列名>={<體現式>|NULL}[,<列名>={<體現式>|NULL}…]WHERECURRENTOF<游標名>7.使用游標的DELETE命令的格式是:DELETEFROM<表名>WHERECURRENTOF<游標名>五、實驗儀器、設備1.軟件一一SQLServer;六、實驗注意事項1.定義游標需要有定定義游標的權限。七、實驗辦法及其環節上機實驗時應當一人一組,獨立上機。對出現的問題要善于自己發現問題所在,獨立解決。上機環節:1.調出SQLServer軟件的顧客界面,進入SQLSERVERMANAGEMENTSTUDIO。2.輸入自己編好的程序。3.檢查已輸入的程序對的與否。4.運行程序,并分析運行成果與否合理和對的。在運行時要注意當輸入不同的數據時所得到的成果與否對的。5.輸出程序清單和運行成果。八、實驗報告規定實驗報告應涉及下列內容1.實驗題目2.實驗目的3.實驗內容4.實驗過程5.實驗成果分析(涉及實驗的成果和其中的實驗數據以及中間的調試過程)6.實驗總結九、思考題1.游標的作用?
實驗九存儲過程及應用一、預習規定1.復習和掌握教材7.2節內容。2.預習SQLServer軟件的使用和SQLServer中存儲過程的概念、創立和執行過程。3.準備好上機所需的程序。二、實驗目的1.理解存儲過程的概念。2.掌握存儲過程的使用辦法。三、實驗內容1.建立以下的存儲過程(基于前面實驗建立的表和插入的數據,并為每個存儲過程設計返回的狀態值):(1)按規定設計完畢以下功效的存儲過程。①查詢平均分數在x到y范疇內的學生信息。闡明:該存儲過程有兩個參數;規定查詢的學生信息涉及學號、姓名、院系名稱和平均成績。②更新操作,以學號、課程編號和考試成績作參數更新指定學生和課程的考試成績,并返回該學生的平均成績。(2)在客戶端以存儲過程和輸入SQL語句的方式分別執行相似的查詢或操作,比較使用和不使用存儲過程的區別。四、實驗原理1.創立存儲過程的SQL語句的普通格式是:CREATEPROC[edure][schema_name].procedure-name[;number][@parameterdata-type[VARYING][=default][OUT|OUTPUT],…]ASsql-statement2.執行存儲過程的語句是:[EXECute][@<返回狀態碼>=]<存儲過程名>[[@<參數>=]{<值>|@<變量>}…]或EXECUTE[@return_status=][schema_name].procedure-name[;number][@parameter=]{value|variable[OUTPUT]}[,…n]五、實驗儀器、設備1.軟件一一SQLServer;六、實驗注意事項1.建立存儲過程需要有CREATEPROCEDURE的權限,執行存儲過程需要有EXECUTE權限。七、實驗辦法及其環節上機實驗時應當一人一組,獨立上機。對出現的問題要善于自己發現問題所在,獨立解決。上機環節:1.調出SQLServer軟件的顧客界面,進入SQLSERVERMANAGEMENTSTUDIO。2.輸入自己編好的程序。3.檢查已輸入的程序對的與否。4.運行程序,并分析運行成果與否合理和對的。在運行時要注意當輸入不同的數據時所得到的成果與否對的。5.輸出程序清單和運行成果。八、實驗報告規定實驗報告應涉及下列內容1.實驗題目2.實驗目的3.實驗內容4.實驗過程5.實驗成果分析(涉及實驗的成果和其中的實驗數據以及中間的調試過程)6.實驗總結九、思考題1.為什么要使用存儲過程?
實驗十觸發器及應用一、預習規定1.復習和掌握教材7.3節內容。2.預習SQLServer軟件的使用和SQLServer中觸發器的概念、創立和執行過程。3.準備好上機所需的程序。二、實驗目的1.學習觸發器的使用,加深對觸發器功效和作用的理解。2.體會觸發器執行的時機。三、實驗內容1.建立以下的存儲過程(基于前面實驗建立的表和插入的數據,并為每個存儲過程設計返回的狀態值):(1)為選課表分別建立插入和更新觸發器,如果現在學生累計不及格門數達成5則給出警示信息。(2)為課程表分別建立插入和更新觸發器來建立約束規則:“專業基礎”課的教師必須為“專家”或“副專家”,如果不滿足約束則回絕操作,并給出錯誤信息。四、實驗原理1.建立觸發器的語句是:CREATETRIGGER[schema_name].trigger-nameON{table|view}FOR{INSERT|UPDATE|DELETE}AS[IFUPDATE(column)[{AND|OR}UPDATE(column)…]]sql-statement五、實驗儀器、設備1.軟件一一SQLServer;六、實驗注意事項1.建立存儲過程需要有CREATEPROCEDURE的權限,執行存儲過程需要有EXECUTE權限。2.建立觸發器需要有CREATETRIGGER的權限。七、實驗辦法及其環節上機實驗時應當一人一組,獨立上機。對出現的問題要善于自己發現問題所在,獨立解決。上機環節:1.調出SQLServer軟件的顧客界面,進入SQLSERVERMANAGEMENTSTUDIO。2.輸入自己編好的程序。3.檢查已輸入的程序對的與否。4.運行程序,并分析運行成果與否合理和對的。在運行時要注意當輸入不同的數據時所得到的成果與否對的。5.輸出程序清單和運行成果。八、實驗報告規定實驗報告應涉及下列內容1.實驗題目2.實驗目的3.實驗內容4.實驗過程5.實驗成果分析(涉及實驗的成果和其中的實驗數據以及中間的調試過程)6.實驗總結九、思考題1.為什么要使用觸發器?2.觸發器和游標的異同之處?實驗十一顧客管理和權限管理一、預習規定1.預習SQLServer軟件的使用和SQLServer中顧客管理和權限管理的概念、創立和執行過程。2.準備好上機所需的程序。二、實驗目的1.學習理解和體會數據庫安全性的內容。2.加強對數據庫管理系統的安全管理功效的認識。三、實驗內容1.以系統管理員身份完畢以下實驗:(1)建立3個不同顧客名稱的注冊顧客(分別為‘user1’,‘user2’,‘user3’)。(2)使用ALTERLOGIN命令對建立的注冊顧客修改密碼。(3)指定’user1’為數據庫管理員顧客。2.以數據庫管理員身份完畢以下實驗:(1)根據已有的注冊顧客建立3個現在數據庫的顧客。(2)使用ALTERUSER命令修改顧客設立。(3)建立1個角色‘role1’,授予該角色查詢、修改、插入學生表的權限。(4)授權‘user2’顧客‘role1’角色,不授予‘user3’任何角色,通過操作學生表比較‘user2’和‘user3’權限。(如果由(2)改了新的顧客名,則以對應的新顧客名進行對應工作)(5)取消‘user2’的role1角色。3.以‘user1’身份完畢:(1)授予‘user2’和‘user3’建立對象的權限,并各自建立自己的對象(如表和視圖等)。(2)授予‘user2’顧客‘學生’表的查詢、修改、刪除、插入等權限及轉授權限,在授權過程中體會GRANT命令中WITHGRANTOPTION短語的作用。再由‘user2’授予‘user3’權限(自己定義)。(3)分狀況收回授權,并體會REVOKE命令中GRANTOPTIONFOR和CASCADE短語的作用。四、實驗原理1.建立注冊顧客的語句是:CREATELOGINlogin_name{WITHPASSWORD=’password’[MUST_CHANGE][,DEFAULT_DATABASE=database][,CHECK_EXPIRATION={ON|OFF}]}2.修改注冊顧客的語句是:ALTERLOGINlogin_name{{ENABLE|DISABLE}|WITHPASSWORD=’password’[,OLD_PASSWORD=’oldpassword’][,DEFAULT_DATABASE=database][,NAME=login_name]}3.建立數據庫顧客的語句是:CREATEUSERuser_name[LOGINlogin_name][WITHDEFAULT_SCHEMA=schema_name]4.修改數據庫顧客的語句是:ALTERUSERuser_nameWITH{NAME=new_user_name|DEFAULT_SCHEMA=schema_name}[,…n]]5.建立角色的語句是:CREATEROLErole_name[AUTHORIZATIONowner_name]6.為角色指定組員的系統過程是:sp_addrolemember[@rolename=]‘role’,[@membername=]’user’7.創立對象的授權語句是:GRANT
{ALL|permission[,…n]}TOprincipal[,…n][WITHGRANT
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 云南特殊教育職業學院《水污染控制工程》2023-2024學年第二學期期末試卷
- 中山智慧路燈施工方案
- 橋墩涉水施工方案怎么寫
- 天津鐵道職業技術學院《景觀設計》2023-2024學年第一學期期末試卷
- 2025標準式辦公室租賃合同
- 2025至2030年中國高堿玻璃球數據監測研究報告
- 2025至2030年中國除焦清灰劑數據監測研究報告
- 別墅擴建施工方案模板
- 2025至2030年中國聚氯乙烯軟制品擠出板數據監測研究報告
- 2025至2030年中國睡伴膠囊數據監測研究報告
- JSBXC1-850時間繼電器
- 煤礦節電降耗管理措施
- 《英語委婉語與忌語》PPT課件.ppt
- 地域文化教學大綱(修訂本)
- 通用航空產業園項目商業計劃書范文參考
- 中國書法演變史
- 工商企業管理畢業論文范文
- 調查問卷設計-課件PPT
- 井下電纜著火應急演練預案
- APP開發合作協議通用版
- 小學數學 五進制
評論
0/150
提交評論