《數(shù)據(jù)庫實驗報告 (一)》由會員分享,可在線閱讀,更多相關(guān)《數(shù)據(jù)庫實驗報告 (一)(7頁珍藏版)》請在裝配圖網(wǎng)上搜索。
1、
濱江學院
題 目 數(shù)據(jù)庫實驗報告 (一)
學生姓名
學 號
系 部 電子工程系
專 業(yè) 通信工程
指導教師 林美華
二O一 三 年 十二 月 十八 日
實驗一 數(shù)據(jù)庫的定義實驗
2、
本實驗需要2學時。
一、實驗目的
要求學生熟練掌握和使用 SQL、SQL Server企業(yè)管理器創(chuàng)建數(shù)據(jù)庫、表、索引和修改表結(jié)構(gòu),并學會使用SQL Server 查詢分析器接收語句和進行結(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ù)庫。
(
3、2)在企業(yè)管理器中查看圖書讀者數(shù)據(jù)庫的屬性,并進行修改,使之符合要求。
(3)通過企業(yè)管理器,在建好的圖書借閱數(shù)據(jù)庫中建立圖書、讀者和借閱3個表,其結(jié)構(gòu)為;
圖書(書號,類別,出版社,作者,書名,定價,作者).
讀者(編號,姓名,單位,性別,電話).
借閱(書號,讀者編號,借閱日期)
要求為屬性選擇合適的數(shù)據(jù)類型,定義每個表的主碼.是否允許空值和默認值等列級數(shù)據(jù)約束。
(4)在企業(yè)管理器中建立圖書、讀者和借閱3個表的表級約束.每個表的主碼約束.借閱表與圖書表間、借閱表與讀者表之間的外碼約束,要求按語義先確定外碼
4、約束表達式.再通過操作予以實現(xiàn).實現(xiàn)借閱表的書號和讀者編號的惟一性約束:實現(xiàn)讀者性別只能是“男”或“女”的Check(檢查)約束。
2 提高操作實驗
(一) 將教材中用SQL描述的建立學生--課程操作.在SQL Server企業(yè)管理器中實現(xiàn)。庫中表結(jié)構(gòu)為:
學生(學號,姓名,年齡,性別,所在系).
課程(課程號,課程名,先行課).
選課(學號,課程號,
5、成績)
要求:
1)建庫、建表和建立表間聯(lián)系。,
2)選擇合適的數(shù)據(jù)類型。
3)定義必要的索引、列級約束和表級約束.
四、實驗方法
l創(chuàng)建數(shù)據(jù)庫
(1)使用企業(yè)管理器創(chuàng)建數(shù)據(jù)庫的步驟
1)從“開始”菜單中選擇;“程序” “Microsoft SQL2000” “企業(yè)管理器”.
2)選中需要在其上創(chuàng)建數(shù)據(jù)庫的服務器 單擊前面的“+”號,使其展示為樹形目錄。
3) 選中“數(shù)據(jù)庫”文件夾,單擊鼠標右鍵,在彈出的菜單上選擇“新建數(shù)據(jù)庫”選項。隨后在“數(shù)據(jù)庫屬性”對話框的“常
6、規(guī)”選項卡中,輸入數(shù)據(jù)庫名,選擇SQL服務器。
“數(shù)據(jù)庫”屬性對話框中有三個選項卡。常規(guī)選項卡、數(shù)據(jù)文件選項卡和事務日志 選項卡。數(shù)據(jù)文件選項卡和事務日志選項卡主要用來定義據(jù)庫的數(shù)據(jù)文件和日志文件的屬性。
4)選擇“數(shù)據(jù)文件”選項卡,輸入圖書-讀者數(shù)據(jù)庫的數(shù)據(jù)文件屬性。包括文件名、存放位置、和文件屬性,再選擇“事務日志”選項卡,輸入數(shù)據(jù)庫的日志文件屬性,包括文件名、存放位置~大小和文件屬性,在選擇文件位置時,可以 單擊位于“位置”列的“…”按鈕。在調(diào)出的文件選擇器中進行位置選擇.
5)單擊“確定”按鈕,關(guān)閉對話框。在企業(yè)管理器窗口中出現(xiàn)“圖書-讀者”數(shù)據(jù)庫標志,這表明建庫工作已經(jīng)
7、完成。
(2)文件屬性參數(shù)說明
文件屬性欄設(shè)在頁面的下部,它包括下列3個選項;
l)文件自動增長復選框:選中后允許文件放滿數(shù)據(jù)時自動增長。
2)文件增長單選框:允許文件自動增長時。設(shè)置每次文件增長的大小。例如,選“按兆字節(jié)”項。則設(shè)置文件增長為固定的大?。粏挝皇荕B;選“按百分比”項,則文件按指定比例數(shù)增長,單位是%。
3)最大文件大小單選鈕.設(shè)置當允許文件擴展時,設(shè)置數(shù)據(jù)文件能夠增長的最大值。選“文件增長不受限制”項,可使文件無限增長。直到用完磁盤空間 選“文件增長限制為”項時,要設(shè)置文件最多達到的固定值。
2.查看和修改數(shù)據(jù)庫屬性參數(shù)
已經(jīng)建好的數(shù)據(jù)庫,有時還需要
8、對它的屬性參數(shù)進行查看和修改。下面分兩步介紹;先介紹查看和修改數(shù)據(jù)庫屬性的步驟,再介紹數(shù)據(jù)庫有關(guān)的參數(shù)及其含義。
(1)查看和修改數(shù)據(jù)庫屬性的步驟
1)啟動企業(yè)管理器.使數(shù)據(jù)庫所在的服務器展開為樹形目錄。
2)選中數(shù)據(jù)庫文件夾,使之展開;用鼠標右擊指定的數(shù)據(jù)庫標識,在彈出的菜單中選擇“屬性”項,出現(xiàn)“數(shù)據(jù)庫屬性”對話框。 從該對話框中可以看出,它由6個選項卡構(gòu)成,不同的是增加了文件組、選項和權(quán)限選項卡。其中:“文件組”選項卡用于設(shè)置數(shù)據(jù)庫的文件組,其概念在前面已經(jīng)介紹過;“權(quán)限”選項卡用來設(shè)置用戶對該數(shù)據(jù)庫的訪問權(quán)限。有關(guān)選項卡內(nèi)容在下面介紹。
3)在選項卡中查看或修改相應
9、的內(nèi)容,單擊“確定”按鈕關(guān)閉對話框。
(2)選項卡中的數(shù)據(jù)庫屬性參數(shù)
“選項”卡,它分訪問、故障還原、設(shè)置和兼容性4個欄目。
l)訪問欄目、訪問欄用來設(shè)置數(shù)據(jù)庫的操作許可
限制訪問復選框:選擇后 限制用戶訪問數(shù)據(jù)庫.
db-owner ,dbcreater或sysedmin成員;只能由數(shù)據(jù)庫擁有者(創(chuàng)建者)使用數(shù)據(jù)庫。
單用戶:在同一時刻是否只允許一個用戶使用該數(shù)據(jù)庫。
只讀:該數(shù)據(jù)庫是否是只讀的。
2)故障還原欄目。設(shè)置故障還原模型。
3)設(shè)置欄目。該欄目用來設(shè)置數(shù)據(jù)庫在進行數(shù)據(jù)操作時的行為特征,它包括8個復選框。其含義比較容易理解
10、。
3 刪除數(shù)據(jù)庫
對于不需要的數(shù)據(jù)庫,可以通過下面的方法刪除。
1)用鼠標右鍵單擊要刪除的數(shù)據(jù)庫,在出現(xiàn)的彈出菜單中選擇“刪除”項。
2)在彈出的確認刪除對話框中 單擊“確認”按鈕。
4 新建表
在 SQL Serve 2000的數(shù)據(jù)庫中,文件夾是按數(shù)據(jù)庫對象的類型建立的.文件夾名是該數(shù)據(jù)庫對象名。當在企業(yè)管理器中選擇服務器和數(shù)據(jù)庫文件夾,并打開已定義好的圖書.讀者數(shù)據(jù)庫后,會發(fā)現(xiàn)它自動設(shè)置了關(guān)系圖、表、視圖、存儲過程、用戶、角色、規(guī)則、默認等文件夾。
要建立“圖書”表,先選中圖書上者數(shù)據(jù)庫中的表文件夾,單由鼠標右鍵,在彈出的菜單
11、中選擇“新建表”,隨后的輸入表結(jié)構(gòu)對。輸人表結(jié)構(gòu)對話框是一張表.它的列屬性有列名、數(shù)據(jù)類型、長度和是否允許空4項。用戶把新建表的結(jié)構(gòu)填入對話框的表中,表中的每一行定義新建表(圖書)的一列。每一列定義新建表的一個列屬性n當光標移到表中的某一行時,下面的列描述就會對應當前行顯示輸入項,用戶可在其中對關(guān)系的屬性進行進一步說明。列描述包括數(shù)據(jù)的精度、小數(shù)位數(shù)、默認值、是否標識等項。
輸入表結(jié)構(gòu)時應注意以下8點:
l)列名列用于輸入宇段名 例如“編號”、“類別”等,列名類似于變量名,其命名規(guī)則與變量一致。列名中不允許出現(xiàn)空格,一張表也不允許有重復的列名.
2)數(shù)據(jù)類型列中的數(shù)據(jù)
12、類型是通過選擇方法,而不是直接鍵入數(shù)據(jù)類型字符輸入的。當鼠標指針移向該列時.就會出現(xiàn)控制鍵,單擊后就會出現(xiàn)數(shù)據(jù)類型下拉框,可選擇其中之一為指定的數(shù)據(jù)類型。
3)長度列、精度和小數(shù)位數(shù)項不是所有字段都必須的。例如int和date time型的長度是固定的,也不需要數(shù)據(jù)精度值。數(shù)據(jù)精度僅對一些數(shù)值型、字符型、貨幣性等數(shù)據(jù)有效,小數(shù)位僅對一些數(shù)值型數(shù)據(jù)有效。
4)允許空列用于設(shè)置是否允許字段為空值,默認項用于設(shè)置字段的默認值。
5)標識、標始種子和標識的增量用于設(shè)置字段具有的心聲行遞增性、初始值以及步長,以便讓SQLServer2000自動添該列的值。具有表示性能的字段的數(shù)據(jù)類型只能為int,
13、smallint.tinyint,decimal(p,0),或numeric(p,0),不允許為空值。一個標只允許有一列具有標識性能。
6)列名前的一列按鈕為字段表示按鈕列。鑰匙圖標說明這個字段為主碼,黑三角圖表說明所指示行為當前字段。
7)在對話框中單擊鼠標右鍵,則會出現(xiàn)一個彈出框。
其中的幾個選項非常有用:選擇“設(shè)置主健”項,則定義當前字段為主碼,表中第一列處會顯示鑰匙圖案;選擇“插入列”項,則在當前字段處插入一個新行;選擇“刪除列”項,則刪除當前字段;選擇“屬性”項,可調(diào)出表屬性對話框,可以在其中定義索引/鍵、與其他表間的關(guān)聯(lián)和約束等屬性。具體方法將在下面介紹。
8)字段輸入完后
14、。就可以關(guān)閉建表對話框了。最后 會彈出“輸入表名”對話框。在對話框中輸入“圖書”表名,單擊“確定”按鈕后。建表工作就完成了。
5. 定義表的完整性約束和索引
表的約束包括碼(主鍵)約束、外碼約束(關(guān)聯(lián)或關(guān)系約束)、惟一性約束、Check(檢查)約束4種、這些約束可以在表屬性對話框中定義。
(1)??? 定義索引和鍵
選擇“索引/鍵”頁面.
1)查看、修改或刪除索引時,先要在“選定的索引”下拉列表框中選擇索引名。其素引內(nèi)容就顯示在表中.需要時,可以直接在表中修改索引內(nèi)容,如改變索引列名、改變排序方法等。對于不需要的索引可以單擊“刪除”按鈕,直接刪除此索引。
15、 2)新建一個索引時,單擊“新建”按鈕,并在下面的表中輸入索引名、索引列名及排列順序。
3)設(shè)置 UNIQUE復選框.確定是否為唯一素引約束.設(shè)置 CLUSTERED復選框.確定是否為群集素引(CLUSTERED)。
(2)定義表間關(guān)聯(lián)
1)查看、修改或刪除表關(guān)聯(lián)的,先要在“選定的關(guān)系”下拉列表框中選擇關(guān)聯(lián)名(即關(guān)系名),其關(guān)聯(lián)內(nèi)容就顯示在表中。需要時??梢灾苯釉诒碇行薷年P(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)名
16、、主碼和外碼。
3)設(shè)置“創(chuàng)建中檢查現(xiàn)存數(shù)據(jù)”復選框,確定新建關(guān)聯(lián)時是否對數(shù)據(jù)進行檢查,要求符合外同約束;設(shè)置“對復制強制關(guān)系”復選框,確定在進行數(shù)據(jù)復制時是否要符合外碼的束;設(shè)置“對INSERT和UPDATE強制關(guān)系”復選框,確認在對數(shù)據(jù)插入和更新時,是否符合外因約束;設(shè)置“級聯(lián)更新相關(guān)的字段”復選框和“級聯(lián)刪除相關(guān)的記錄”復選框,確認被參照關(guān)系的主碼值被修改時.是否也將參照表中的對應的外碼值修改,而被參照關(guān)系的主碼值被刪除時,是否也將參照表中對應外碼的記錄刪除。
(3)定義CHECK約束
1)查看、修改或刪除CHECK約束時,先要在“選定的約束”下拉列表框中選
17、擇約束名,其約束內(nèi)容就顯示在約束表達式框中。需要時,可以直接在框中修改約束表達式。對于不需要的CHECK約束可以按“刪除”按鈕、.直接刪除此約束.
2)新建一個CHECK約束時,單擊“新建”按鈕,并在表中輸入約束名和約束表達式。
3)設(shè)置“創(chuàng)建中檢查現(xiàn)存數(shù)據(jù)”.確認在創(chuàng)建約束時是否對表中數(shù)據(jù)進行檢查。要求符合約束要求;設(shè)置“對復制強制約束”復合框,確認對數(shù)據(jù)復制時是否要求符合約束條件;設(shè)置“對INSERT和UPDATE強制約束”。確認在進行數(shù)據(jù)插入和數(shù)據(jù)修改時,是否要求符合約束條件。
6 修改表結(jié)構(gòu)
當需要對建好的表修改結(jié)構(gòu)時,首先要在企業(yè)管理器中找到該
18、表。用鼠標右擊該表名就會彈出一個菜單。隨后,在彈出的菜單中選擇“設(shè)計表”頂,企業(yè)管理器會調(diào)出建表對話框,用戶可對原有內(nèi)容進行修改。
五、實驗報告要求
1 用SQL表示圖書讀者數(shù)據(jù)庫建庫和建表(建索引)操作,用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ù)約束的定義。
七、實驗圖