TSQL Server數(shù)據(jù)庫系統(tǒng)實驗指導08s_第1頁
TSQL Server數(shù)據(jù)庫系統(tǒng)實驗指導08s_第2頁
TSQL Server數(shù)據(jù)庫系統(tǒng)實驗指導08s_第3頁
TSQL Server數(shù)據(jù)庫系統(tǒng)實驗指導08s_第4頁
TSQL Server數(shù)據(jù)庫系統(tǒng)實驗指導08s_第5頁
已閱讀5頁,還剩14頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、第2章數(shù)據(jù)庫系統(tǒng)實驗指導上機實驗是數(shù)據(jù)庫課程的重要環(huán)節(jié),它貫穿于整個“數(shù)據(jù)庫系統(tǒng)”課程教學過程中。本課程的實驗分為前期準備階段、基本操作階段和技術(shù)提高階段三個階段。前期準備階段的實驗圍繞數(shù)據(jù)庫系統(tǒng)設計進行,它要求學生根據(jù)教科書的內(nèi)容,設計一個自選的實際數(shù)據(jù)庫系統(tǒng),并完成相應的設計報告;基本操作階段的實驗圍繞著數(shù)據(jù)庫系統(tǒng)的基本操作進行,其內(nèi)容主要是有關(guān)數(shù)據(jù)庫定義、數(shù)據(jù)操縱和數(shù)據(jù)控制功能,它要求學生結(jié)合書本上有關(guān)數(shù)據(jù)庫系統(tǒng)和數(shù)據(jù)庫語言的知識完成;技術(shù)提高階段的實驗不僅要求把書本上的內(nèi)容掌握好,同時還需要自學一些相關(guān)的知識。實驗的軟件環(huán)境為Microsoft SQL Server 2000。22實驗

2、二數(shù)據(jù)庫的定義實驗本實驗需要2學時。一、實驗目的要求學生熟練掌握和使用SQL、Transact-SQL、SQL Server企業(yè)管理器創(chuàng)建數(shù)據(jù)庫、表、索引和修改表結(jié)構(gòu),并學會使用SQL Server查詢分析器接收Transact-SQL語句和進行結(jié)果分析。二、實驗內(nèi)容1創(chuàng)建數(shù)據(jù)庫和查看數(shù)據(jù)庫屬性。2創(chuàng)建表、確定表的主碼和約束條件,為主碼建索引。3查看和修改表結(jié)構(gòu)。4熟悉SQL Server企業(yè)管理器和查詢分析器工具的使用方法。三、實驗步驟1基本操作實驗(1)使用企業(yè)管理器按教材中的內(nèi)容建立圖書讀者數(shù)據(jù)庫。(2)在企業(yè)管理器中查看圖書讀者數(shù)據(jù)庫的屬性,并進行修改,使之符合要求。(3)通過企業(yè)管理

3、器,在建好的圖書借閱數(shù)據(jù)庫中建立圖書、讀者和借閱3個表,其結(jié)構(gòu)為:圖書(書號,類別,出版社,作者,書名,定價,作者);讀者(編號,姓名,單位,性別,電話);借閱(書號,讀者編號,借閱日期)要求為屬性選擇合適的數(shù)據(jù)類型,定義每個表的主碼,是否允許空值和默認值等列級數(shù)據(jù)約束。(4)在企業(yè)管理器中建立圖書、讀者和借閱3個表的表級約束:每個表的主碼約束;借閱表與圖書表間、借閱表與讀者表之間的外碼約束,要求按語義先確定外碼約束表達式,再通過操作予以實現(xiàn);實現(xiàn)借閱表的書號和讀者編號的惟一性約束;實現(xiàn)讀者性別只能是“男”或“女”的Check(檢查)約束。2提高操作實驗(1)將教材中用SQL描述的建立學生_課

4、程庫操作,在SQL Server企業(yè)管理器中實現(xiàn)。庫中表結(jié)構(gòu)為:學生(學號,姓名,年齡,性別,所在系);課程(課程號,課程名,先行課);選課(學號,課程號,成績)要求:1)建庫、建表和建立表間聯(lián)系。2)選擇合適的數(shù)據(jù)類型。3)定義必要的索引、列級約束和表級約束。(2)將自設計的數(shù)據(jù)庫應用系統(tǒng)中的數(shù)據(jù)庫、庫中的表、索引和約束用Transact-SQL表達,并通過企業(yè)管理器或查詢分析器實現(xiàn)建庫、建表、建立表間聯(lián)系和建立必要的索引、列級約束和表級約束的操作。四、實驗方法1創(chuàng)建數(shù)據(jù)庫(1)使用企業(yè)管理器創(chuàng)建數(shù)據(jù)庫的步驟1)從“開始菜單中選擇:“程序”“Microsoft SQL Server 2000

5、”“企業(yè)管理器”。2)選中需要在其上創(chuàng)建數(shù)據(jù)庫的服務器,單擊前面的“+”號,使其展示為樹形目錄。3)選中“數(shù)據(jù)庫”文件夾,單擊鼠標右鍵,在彈出的菜單上選擇“新建數(shù)據(jù)庫”選項,如圖2-1。隨后在“數(shù)據(jù)庫屬性”對話框的“常規(guī)”選項卡中,輸入數(shù)據(jù)庫名,選擇SQL服務器,如圖2-2所示。圖21在數(shù)據(jù)庫彈出菜單中選擇“新建數(shù)據(jù)庫”圖22數(shù)據(jù)庫屬性對話框“數(shù)據(jù)庫屬性對話框中有三個選項卡:常規(guī)選項卡、數(shù)據(jù)文件選項卡和事務日志選項卡。數(shù)據(jù)文件選項卡和事務日志選項卡主要用來定義數(shù)據(jù)庫的數(shù)據(jù)文件和日志文件的屬性。4)選擇“數(shù)據(jù)文件”選項卡,輸入學生管理數(shù)據(jù)庫的數(shù)據(jù)文件屬性,包括文件名、存放位置、和文件屬性,如圖2

6、-3所示;再選擇“事務日志”選項卡,輸入數(shù)據(jù)庫的日志文件屬性,包括文件名、存放位置、大小和文件屬性,如圖2-4所示。在選擇文件位置時,可以單擊位于“位置”列的“”按鈕,在調(diào)出的文件選擇器中進行位置選擇。圖2-3數(shù)據(jù)庫屬性對話框中的數(shù)據(jù)文件選項卡圖2-4數(shù)據(jù)庫屬性對話框中的事務日志選項卡5)單擊“確定”按鈕,關(guān)閉對話框。在企業(yè)管理器窗口中出現(xiàn)“學生管理”數(shù)據(jù)庫標志,這表明建庫工作已經(jīng)完成。(2)文件屬性參數(shù)說明文件屬性欄設在頁面的下部,它包括下列3個選項:1)文件自動增長復選框:選中后允許文件放滿數(shù)據(jù)時自動增長。2)文件增長單選框:允許文件自動增長時,設置每次文件增長的大小。例如,選“按兆字節(jié)”

7、項,則設置文件增長為固定的大小,單位是MB;選“按百分比”項,則文件按指定比例數(shù)增長,單位是。3)最大文件大小單選鈕:設置當允許文件擴展時,設置數(shù)據(jù)文件能夠增長的最大值。選“文件增長不受限制”項,可使文件無限增長,直到用完磁盤空間;若選“將文件增長限制為項時,要設置文件最多達到的固定值。2查看和修改數(shù)據(jù)庫屬性參數(shù)已經(jīng)建好的數(shù)據(jù)庫,有時還需要對它的屬性參數(shù)進行查看和修改。下面分兩步介紹:先介紹查看和修改數(shù)據(jù)庫屬性的步驟,再介紹數(shù)據(jù)庫有關(guān)的參數(shù)及其含義。(1)查看和修改數(shù)據(jù)庫屬性的步驟1)啟動企業(yè)管理器,使數(shù)據(jù)庫所在的服務器展開為樹形目錄。2)選中數(shù)據(jù)庫文件夾,使之展開;用鼠標右擊指定的數(shù)據(jù)庫標識

8、,在彈出的菜單中選擇“屬性”項,如圖2-5所示。出現(xiàn)“數(shù)據(jù)庫屬性”對話框,如圖2-6所示。從該對話框中可以看出,它由6個選項卡構(gòu)成,與圖2-2不同的是增加了文件組、選項和權(quán)限選項卡。其中:“文件組”選項卡用于設置數(shù)據(jù)庫的文件組,其概念在前面已經(jīng)介紹過;“權(quán)限選項卡用來設置用戶對該數(shù)據(jù)庫的訪問權(quán)限,有關(guān)選項卡內(nèi)容在下面介紹。3)在選項卡中查看或修改相應的內(nèi)容,單擊“確定”按鈕關(guān)閉對話框。(2)選項卡中的數(shù)據(jù)庫屬性參數(shù)“選項”卡如圖2-6所示,它分訪問、故障還原、設置和兼容性4個欄目。1)訪問欄目。訪問欄用來設置數(shù)據(jù)庫的操作許可。限制訪問復選框:選擇后,限制用戶訪問數(shù)據(jù)庫。db_owner,dbc

9、reator,或sysedmin成員:只能由數(shù)據(jù)庫擁有者(創(chuàng)建者)使用數(shù)據(jù)庫。圖2-5在企業(yè)管理器中選擇數(shù)據(jù)庫的“屬性”項圖2-6數(shù)據(jù)庫屬性對話框中的選項卡單用戶:在同一時刻是否只允許一個用戶使用該數(shù)據(jù)庫。只讀:該數(shù)據(jù)庫是否是只讀的。2)故障還原欄目。設置故障還原模型。3)設置欄目。該欄目用來設置數(shù)據(jù)庫在進行數(shù)據(jù)操作時的行為特征,它包括8個復選框,其含義比較容易理解。3刪除數(shù)據(jù)庫對于不需要的數(shù)據(jù)庫,可以通過下面的方法刪除。1)用鼠標右鍵單擊要刪除的數(shù)據(jù)庫,在出現(xiàn)的彈出菜單中選擇“刪除”項。2)在彈出的確認刪除對話框中,單擊“確認”按鈕。4新建表在SQL Server 2000的數(shù)據(jù)庫中,文件夾

10、是按數(shù)據(jù)庫對象的類型建立的,文件夾名是該數(shù)據(jù)庫對象名。當在企業(yè)管理器中選擇服務器和數(shù)據(jù)庫文件夾,并打開已定義好的圖書_讀者數(shù)據(jù)庫后,會發(fā)現(xiàn)它自動設置了關(guān)系圖、表、視圖、存儲過程、用戶、角色、規(guī)則、默認等文件夾。要建立“圖書”表,先選中圖書_讀者數(shù)據(jù)庫中的表文件夾,單擊鼠標右鍵,在彈出的菜單中選擇“新建表”,如圖2-7所示,隨后的輸入表結(jié)構(gòu)對話框如圖2-8所示。輸入表結(jié)構(gòu)對話框是一張表,它的列屬性有列名、數(shù)據(jù)類型、長度和是否允許空4項。用戶把新建表的結(jié)構(gòu)填入對話框的表中,表中的每一行定義新建表(圖書)的一列,每一列定義新建表的一個列屬性。當光標移到表中的某一行時,下面的列描述就會對應當前行顯示輸

11、入項,用戶可在其中對關(guān)系的屬性進行進一步說明。列描述包括數(shù)據(jù)的精度、小數(shù)位數(shù)、默認值、是否標識等項。輸入表結(jié)構(gòu)時應注意以下8點:1)列名列用于輸入字段名,例如“編號”、“類別”等,列名類似于變量名,其命名規(guī)則與變量一致。列名中不允許出現(xiàn)空格,一張表也不允許有重復的列名。2)數(shù)據(jù)類型列中的數(shù)據(jù)類型是通過選擇方法,而不是直接鍵入數(shù)據(jù)類型字符輸入的。當鼠標指針移向該列時,就會出現(xiàn)控制鍵,單擊后就會出現(xiàn)數(shù)據(jù)類型下拉框,如圖2-8所示,可選擇其中之一為指定的數(shù)據(jù)類型。圖2-7數(shù)據(jù)庫中的表文件夾的彈出單圖2-8輸入表結(jié)構(gòu)對話框3)長度列、精度和小數(shù)位數(shù)項不是所有字段都必選的。例如int和datetime型

12、的長度是固定的,也不需要數(shù)據(jù)精度值。數(shù)據(jù)精度僅對一些數(shù)值型、字符型、貨幣型等數(shù)據(jù)有效,小數(shù)位僅對一些數(shù)值型數(shù)據(jù)有效。4)允許空列用于設置是否允許字段為空值,默認項用于設置字段的默認值。5)標識、標識種子和標識遞增量用于設置字段具有的新生行遞增性、初始值以及步長,以便讓SQL Server 2000自動填寫該列的值。具有標識性能的字段的數(shù)據(jù)類型只能為int,Smallint,tinyint,decimal(p,O)或numeric(p,O),不允許為空值。一個表只允許有一列具有標識性能。6)列名前的一列按鈕為字段標注按鈕列。鑰匙圖標說明這個字段為主碼,黑三角圖標說明所指示行為當前字段。7)在對話

13、框中單擊鼠標右鍵,則會出現(xiàn)一個彈出框,如圖2-9所示。其中的幾個項選項非常有用:選擇“設置主鍵”項,則定義當前字段為主碼,表中第一列處會顯示鑰匙圖案;選擇“插入列”項,則在當前字段處插入一個新行;選擇“刪除列”項,則刪除當前字段;選擇“屬性”項,可調(diào)出表屬性對話框,如圖2-10所示,可以在其中定義索引鍵、與其他表間的關(guān)聯(lián)和約束等屬性。具體方法將在下面介紹。圖2-9建表對話框中的彈出框圖2-10表屬性對話框8)字段輸入完后,就可以關(guān)閉建表對話框了。最后,會彈出“輸入表名”對話框,如圖2-11所示。在對話框中輸入“圖書”表名,單擊“確定”按鈕后,建表工作就完成了。圖2-11輸入表名對話框5定義表的

14、完整性約束和索引表的約束包括碼(主鍵)約束、外碼約束(關(guān)聯(lián)或關(guān)系約束)、惟一性約束、Check(檢查)約束4種。這些約束可以在表屬性對話框中定義。(1)定義索引和鍵選擇“索引鍵”頁面,其界面如圖2-10所示。1)查看、修改或刪除索引時,先要在“選定的索引”下拉列表框中選擇索引名,其索引內(nèi)容就顯示在表中。需要時,可以直接在表中修改索引內(nèi)容,如改變索引列名、改變排序方法等。對于不需要的索引可以單擊“刪除”按鈕,直接刪除此索引。2)新建一個索引時,單擊“新建”按鈕,并在下面的表中輸入索引名、索引列名及排列順序。3)設置UNIQUE復選框,確定是否為惟一索引約束。設置CLUSTERED復選框,確定是否

15、為群集索引(CLUSTERED)。(2)定義表間關(guān)聯(lián)選擇表頁面,其界面如圖2-12所示。1)查看、修改或刪除表關(guān)聯(lián)時,先要在“選定的關(guān)系”下拉列表框中選擇關(guān)聯(lián)名(即關(guān)系名),其關(guān)聯(lián)內(nèi)容就顯示在表中。需要時,可以直接在表中修改關(guān)聯(lián)內(nèi)容,例如改變主鍵、改變外碼鍵等。對于不需要的關(guān)聯(lián)可以單擊“刪除”按鈕,直接刪除此關(guān)聯(lián)。2)新建一個關(guān)聯(lián)時,單擊“新建”按鈕,選擇庫中的關(guān)聯(lián)表(參照表)后,在表中輸入關(guān)聯(lián)名、主碼和外碼。3)設置“創(chuàng)建中檢查現(xiàn)存數(shù)據(jù)復選框,確定新建關(guān)聯(lián)時是否對數(shù)據(jù)進行檢查,要求符合外碼約束;設置“對復制強制關(guān)系”復選框,確定在進行數(shù)據(jù)復制時是否要符合外碼約束;設置“對INSERT和UPD

16、ATE強制關(guān)系”復選框,確認在對數(shù)據(jù)插入和更新時,是否符合外碼約束;設置“級聯(lián)更新相關(guān)的字段”復選框和“級聯(lián)刪除相關(guān)的記錄”復選框,確認被參照關(guān)系的主碼值被修改時,是否也將參照表中的對應的外碼值修改,而被參照關(guān)系的主碼值被刪除時,是否也將參照表中對應外碼的記錄刪除。(3)定義CHECK約束選擇CHECK約束頁面,其界面如圖2-13所示。圖2-12表屬性對話框中的表關(guān)聯(lián)頁面圖2-13表屬性對話框中的約束頁面1)查看、修改或刪除CHECK約束時,先要在“選定的約束”下拉列表框中選擇約束名,其約束內(nèi)容就顯示在約束表達式框中。需要時,可以直接在框中修改約束表達式。對于不需要的CHECK約束可以按“刪除

17、”按鈕,直接刪除此約束。2)新建一個CHECK約束時,單擊“新建”按鈕,并在表中輸入約束名和約束表達式。3)設置“創(chuàng)建中檢查現(xiàn)存數(shù)據(jù)”,確認在創(chuàng)建約束時是否對表中數(shù)據(jù)進行檢查,要求符合約束要求;設置“對復制強制約束”復合框,確認對數(shù)據(jù)復制時是否要求符合約束條件;設置“對INSERT和UPDATE強制約束”,確認在進行數(shù)據(jù)插入和數(shù)據(jù)修改時,是否要求符合約束條件。6修改表結(jié)構(gòu)當需要對建好的表修改結(jié)構(gòu)時,首先要在企業(yè)管理器中找到該表,用鼠標右擊該表名,就會彈出一個菜單,如圖2-14所示。隨后,在彈出的菜單中選擇“設計表”項,企業(yè)管理器會調(diào)出如圖2-9所示的建表對話框,用戶可對原有內(nèi)容進行修改。圖21

18、4在彈出菜單中選擇“設計表”項五、實驗報告要求1分別用SQL和Transact-SQL表示圖書讀者數(shù)據(jù)庫建庫和建表(建索引)操作,用SQL和Transact-SQL表示的學生_課程庫建表和建庫操作。指出SQL和Transact-SQL定義語句的不同之處。2指出圖書讀者數(shù)據(jù)庫和學生_課程庫中各表的主碼、外碼和數(shù)據(jù)約束。3實驗操作步驟和實驗結(jié)果,實驗中出現(xiàn)的問題和解決方法。4體會和提高。六、事項1建表中如果出現(xiàn)錯誤,應采用相應的修改結(jié)構(gòu)或刪除結(jié)構(gòu)的方法。2注意數(shù)據(jù)庫的主碼、外碼和數(shù)據(jù)約束的定義。七、思考題1為什么要建立索引?圖書讀者數(shù)據(jù)庫和學生_課程庫中建立多少索引合適。2學生_課程庫的選課表中,

19、屬性學號、課程號采用數(shù)值型,還是采用字符型的?采用哪種數(shù)據(jù)類型更好?23實驗三數(shù)據(jù)庫的建立和維護實驗本實驗需要2學時。一、實驗目的要求學生熟練掌握使用SQL、Transact-SQL和SQL Server企業(yè)管理器向數(shù)據(jù)庫輸入數(shù)據(jù)、修改數(shù)據(jù)和刪除數(shù)據(jù)的操作。二、實驗內(nèi)容和步驟1基本操作實驗(1)通過企業(yè)管理器,在圖書借閱數(shù)據(jù)庫的圖書、讀者和借閱3個表中各輸入10條記錄。要求記錄不僅滿足數(shù)據(jù)約束要求,還要有表間關(guān)聯(lián)的記錄。(2)通過企業(yè)管理器實現(xiàn)對圖書借閱數(shù)據(jù)庫的圖書、讀者和借閱3個表中數(shù)據(jù)的插入、刪除和修改操作。(3)通過企業(yè)管理器實現(xiàn)對學生選課庫的數(shù)據(jù)增加、數(shù)據(jù)刪除和數(shù)據(jù)修改操作。要求學生、

20、課程和選課表中各有10條以上的記錄。2提高操作實驗(1)向自設計的數(shù)據(jù)庫應用系統(tǒng)的庫中的各表,輸入多條實際數(shù)據(jù),并實現(xiàn)數(shù)據(jù)的增、刪、改操作。(2)實現(xiàn)在讀者表中增加“借書冊數(shù)”字段,統(tǒng)計借書者在1998年1999年間所借書的冊數(shù),并將結(jié)果送入讀者表中的借書冊數(shù)字段的操作。三、實驗方法在Microsoft SQL Server 2000的企業(yè)管理器中,對表進行數(shù)據(jù)增、刪、改操作非常簡便。其操作方法是:1)選中服務器,展開數(shù)據(jù)庫文件夾,進一步展開指定的數(shù)據(jù)庫。單擊表文件夾,找到需要更新數(shù)據(jù)的基本表。2)用鼠標右擊要更新數(shù)據(jù)的表,會出現(xiàn)與表相關(guān)操作的彈出菜單,如圖2-15所示。在彈出菜單中選擇“打開

21、表”“返回所有行”,就會出現(xiàn)表數(shù)據(jù)更新對話框,如圖2-16所示。圖2-15基本表的彈出菜單圖2-16在表中插入、修改或刪除數(shù)據(jù)界面在該對話框中,數(shù)據(jù)以表格形式組織,每個字段就是表中的一列,每條記錄是表中的一行。原有的記錄已經(jīng)在表格中,通過移動右邊的滑塊可查閱所有的記錄。3)需要數(shù)據(jù)插入時,就在最后一條記錄后輸入一條記錄。當鼠標點擊其他行時,輸入的記錄會自動保存在表中。4)需要修改記錄時,直接對表中已有記錄的數(shù)據(jù)進行改動,用新值替換原有值。5)需要刪除記錄時,先用鼠標單擊要刪除行的左邊灰色方塊,使該記錄成為當前行,然后按(Delete)鍵。為了防止誤操作,SQL Server 2000將彈出一個

22、警告框,要求用戶確認刪除操作,單擊“確認”按鈕即可刪除記錄。也可通過先選中一行或多行記錄,然后再按(Delete)鍵的方法一次刪除多條記錄。6)在表中單擊鼠標右鍵時,會彈出如圖2-16所示的菜單,選擇菜單項可執(zhí)行相應的操作,如剪切、復制等操作。四、實驗報告要求1以一條記錄為例,分別寫出用SQL和Transact-SQL表示的向圖書表中插入、修改和刪除數(shù)據(jù)的語句。2用Transact-SQL實現(xiàn)在讀者表中增加“借書冊數(shù)”字段,統(tǒng)計借書者在1998年1999年間所借書的冊數(shù),并將結(jié)果送入讀者表中的借書冊數(shù)字段的操作語句。3寫出操作的過程和操作結(jié)果(數(shù)據(jù)庫中各表的數(shù)據(jù))。五、注意事項1輸入數(shù)據(jù)時要注

23、意數(shù)據(jù)類型、主碼和數(shù)據(jù)約束的限制。2數(shù)據(jù)更改和數(shù)據(jù)刪除時要注意外碼約束。六、思考題1數(shù)據(jù)庫中一般不允許更改主碼數(shù)據(jù)。如果需要更改主碼數(shù)據(jù)時,怎樣處理?2為什么不能隨意刪除被參照表中的主碼。24實驗四數(shù)據(jù)庫的簡單查詢和連接查詢實驗本實驗需要2學時。一、實驗目的使學生掌握SQLServer查詢分析器的使用方法,加深對SQL和Transact-SQL語言的查詢語句的理解。熟練掌握簡單表的數(shù)據(jù)查詢、數(shù)據(jù)排序和數(shù)據(jù)聯(lián)結(jié)查詢的操作方法。二、實驗內(nèi)容1簡單查詢操作該實驗包括投影、選擇條件表達、數(shù)據(jù)排序、使用臨時表等。2連接查詢操作該實驗包括等值連接、自然連接、求笛卡兒積、一般連接、外連接、內(nèi)連接、左連接、右

24、連接和自連接等。三、實驗方法1將查詢需求用Transact-SQL語言表示。2在SQI:Server查詢分析器的輸入?yún)^(qū)中Transact-SQL查詢語句。3設置查詢分析器結(jié)果區(qū)為Standard Execute(標準執(zhí)行)或Execute to Grid方式。4發(fā)布執(zhí)行命令,查看查詢結(jié)果;如果結(jié)果不正確,進行修改,直到正確為止。5查詢分析器及使用方法。查詢分析器是在開發(fā)數(shù)據(jù)庫應用系統(tǒng)時使用最多的工具。查詢分析器的主要作用是編輯Transact-SQL,將其發(fā)送到服務器,并將執(zhí)行結(jié)果及分析顯示出來(或進行存儲)。查詢分析功能主要通過測試查詢成本,判斷該查詢是否需要增加索引以提高查詢速度,并可以實

25、現(xiàn)自動建立索引的功能。查詢分析器的界面如圖2-17圖所示。圖2-17SQL Server 2000查詢分析器在查詢生成器中的左邊窗口是對象瀏覽器,其中按樹結(jié)構(gòu)列出了數(shù)據(jù)庫對象;右上方是SQL代碼區(qū)域,用于輸入SQL的查詢語句;右下方為結(jié)果區(qū),用于顯示查詢結(jié)果和分析結(jié)果。對于TSQL語句的執(zhí)行結(jié)果,在結(jié)果區(qū)中可以有4種不同的輸出形式:標準執(zhí)行將結(jié)果直接顯示在結(jié)果區(qū);網(wǎng)格執(zhí)行將結(jié)果以表格形式顯示在結(jié)果區(qū);計劃執(zhí)行顯示執(zhí)行計劃;索引分析為在結(jié)果區(qū)中顯示查詢的索引情況。上述輸出形式,可以通過菜單或按鈕選擇。四、實驗步驟1基本操作實驗(1)簡單查詢實驗1)用Transact-SQL語句表示下列操作,在學

26、生選課庫中實現(xiàn)其數(shù)據(jù)查詢操作:求數(shù)學系學生的學號和姓名。求選修了課程的學生學號。求選修C1課程的學生學號和成績,并要求對查詢結(jié)果按成績降序排列,如果成績相同則按學號升序排列。求選修課程C1且成績在8090分之間的學生學號和成績,并將成績乘以系數(shù)O.8輸出。求數(shù)學系或計算機系姓張的學生的信息。求缺少了成績的學生的學號和課程號。2)在圖書借閱庫中實現(xiàn)其查詢操作:將計算機類的書存入永久的計算機圖書表中,將借書日期在1999年以前的借閱記錄存入臨時的超期借閱表。(2)連接查詢實驗用Transact-SQL語句表示,并在學生選課庫中實現(xiàn)下列數(shù)據(jù)連接查詢操作:查詢每個學生的情況以及他(她)所選修的課程。求

27、學生的學號、姓名、選修的課程名及成績。求選修C1課程且成績?yōu)?0分以上的學生學號、姓名及成績。查詢每一門課的間接先行課(即先行課的先行課)。2提高操作實驗(1)按表2-1的格式,建立職工部門庫和職工表、部門表,并向表中輸入數(shù)據(jù)。表2-1職工和部門表數(shù)據(jù)職工表職工號姓名性別年齡所在部門1010李勇男20ll1011劉晨女191012王敏女22121014張立男2l13部門表部門號部門名稱電話11生產(chǎn)科56612計劃科57813一車間46714科研所(2)Transact-SQL語句表示職工和部門之間的內(nèi)連接、左外部連接和右外部連接,在職工部門庫中實現(xiàn)其數(shù)據(jù)內(nèi)連接和各種外查詢操作。五、實驗報告要求

28、1分別用SQL和Transact-SQL寫出實驗操作的查詢語句,對兩種語言進行比較。2實驗步驟和實驗結(jié)果。3實驗中的問題和提高。六、注意事項1查詢結(jié)果的幾種處理方式。2內(nèi)連接、左外部連接和右外部連接的含義及表達方法。3輸入SQL語句時應注意,語句中均使用西文操作符號。七、思考題1如何提高數(shù)據(jù)查詢和連接速度?2對于常用的查詢形式或查詢結(jié)果,怎樣處理好?25實驗五數(shù)據(jù)庫的嵌套查詢實驗本實驗需要2學時。一、實驗目的使學生進一步掌握SQL Server查詢分析器的使用方法,加深SQL和Transact-SQL語言的嵌套查詢語句的理解。二、實驗內(nèi)容在SQL Server查詢分析器中使用IN、比較符、AN

29、Y或ALL和EXISTS操作符進行嵌套查詢操作。三、實驗方法將查詢需求用Transact-SQL語言表示;在SQL Server查詢分析器的輸入?yún)^(qū)中輸入Transact-SQL查詢語句;設置查詢分析器的結(jié)果區(qū)為Standard Execute(標準執(zhí)行)或Execute to Grid(網(wǎng)格執(zhí)行)方式;發(fā)布執(zhí)行命令,并在結(jié)果區(qū)中查看查詢結(jié)果;如果結(jié)果不正確,要進行修改,直到正確為止。四、實驗步驟1基本操作實驗用Transact-SQL語句表示,在學生選課庫中實現(xiàn)其數(shù)據(jù)嵌套查詢操作。(1)求選修了高等數(shù)學的學生學號和姓名。(2)求C1課程的成績高于張三的學生學號和成績。(3)求其他系中年齡小于計算機系年齡最大者的學生。(4)求其他系中比計算機系學生年齡都小的學生。(5)求選修了C2課程的學生姓名。(6)求沒有選修C2課程的學生姓名。(7)查詢選修了全部課程的學生的姓名。(8)求至少選修了學號為“S2的學生所選修的全部課程的學生學號和姓名。2提高操作實驗將自設計的數(shù)據(jù)庫應用項目中的數(shù)據(jù)查詢操作分類,用Transact-SQL語句表示其中的簡單、連接和嵌套查詢,并通過SQL Server查詢分析器實現(xiàn)其查詢操作。五、實驗報告要求1分別用SQL和Transact-SQL寫出實驗操作的查詢語句,對兩種語言進行比較。2實驗步驟和實驗結(jié)果。3

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 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

提交評論