版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、課題實驗報告 山西大學軟件學院 課 程 實 驗 報 告 實驗課程 數(shù)據(jù)庫課程實驗 實驗名稱 數(shù)據(jù)庫系統(tǒng)設(shè)計與實現(xiàn) 實驗地點 綜合樓機房 實驗時間 8:00到 9:50 學生班級 軟工1909 學生學號 201902810904 學生姓名 崔杰華 指導教師 耿艷萍 2021年 6月 10日 實驗?zāi)康模?1.理解并掌握數(shù)據(jù)庫設(shè)計的概念、方法和步驟。 2.了解需求分析的內(nèi)容。 3.重點運用ER模型進行概念設(shè)計。 4.將ER模型轉(zhuǎn)換為關(guān)系模型。 5.掌握SQL Server的數(shù)據(jù)庫的創(chuàng)建與管理。 6.掌握SQL Server表的概念、設(shè)計、創(chuàng)建與管理。 7.全面掌握Transcat-SQL命令。 8.
2、掌握安全性的概念,創(chuàng)建登錄、用戶、角色,授予相應(yīng)的權(quán)限。 9.掌握視圖、存儲過程、觸發(fā)器等的創(chuàng)建與應(yīng)用。 實驗器材: 電腦 SQLserver 2012 實驗內(nèi)容: 實驗項目:圖書管理系統(tǒng) (一)簡要的系統(tǒng)需求分析 該實驗設(shè)計開發(fā)一個簡單的圖書管理數(shù)據(jù)庫系統(tǒng),包括圖書館內(nèi)書籍的信息、學校在校師生的信息以及師生的借閱信息。此系統(tǒng)用戶面向圖書管理員和借閱讀者,圖書館管理員可以完成圖書、讀者、圖書類型、學科類型、讀者類型等基本信息的增加、刪除和修改,可以制定借閱規(guī)則;讀者可以進行圖書的借閱、續(xù)借、歸還、預(yù)約的確認等操作。 讀者的基本數(shù)據(jù)有讀者編號,姓名,聯(lián)系電話,所在系,讀者類型,權(quán)限狀況。 圖書的
3、基本數(shù)據(jù)有書籍編號,書籍名稱,作者,出版社,出版日期,價格,封面,類型。 管理員的基本數(shù)據(jù)有編號,密碼,賬號。 此外,一個成熟的管理系統(tǒng)不僅應(yīng)該具有基本的處理、查詢功能,還應(yīng)該有一些分析、后臺監(jiān)控的功能。應(yīng)該限制用戶對數(shù)據(jù)的訪問范圍,限制用戶操作級別(普通用戶、管理員),限制對數(shù)據(jù)表修改權(quán)限。 最后,要求在進行設(shè)計系統(tǒng)中同時注意性能要求,響應(yīng)各種操作的時間盡可能少。 借閱功能: 圖書出借時考慮三個問題: 讀者是否因為超期、罰款等情況被關(guān)閉了借閱權(quán)限; 讀者是否已經(jīng)借滿其限額。 該書是否不在庫中; 如果不存在以上情況,則可以出借。 預(yù)約功能: 讀者想借的書如果不在庫中(已經(jīng)被出借),讀者可以預(yù)約
4、該圖書,當該圖書被歸還時系統(tǒng)給讀者發(fā)送信息,提醒他來借閱,此時其他讀者也可以借閱該書。 續(xù)借功能: 讀者還書的時候可以續(xù)借該圖書,續(xù)借的過程包括先執(zhí)行還書操作,再執(zhí)行借閱操作。 發(fā)送催還信息: 管理員可以發(fā)送信息提醒讀者到期還書。 讀者管理功能: 對讀者信息進行查看、添加、修改、刪除。將讀者分為不同類別,賦以不同權(quán)限。 系統(tǒng)管理功能: 對管理員的登錄賬號、密碼進行添加、修改、刪除。 借閱規(guī)則管理功能: 對圖書借閱規(guī)則進行查看、添加、修改、刪除。 (二)概念設(shè)計 設(shè)計系統(tǒng)的概念模型,采用ER模型。 概念設(shè)計是把用戶的需求進行綜合,歸納與抽象,統(tǒng)一到一個整體概念結(jié)構(gòu)中,形成數(shù)據(jù)的概念模型,主要是用
5、E-R模型來實現(xiàn)的。 下面就來顯示上面各實體以及實體之間的關(guān)系的E-R模型。 1.讀者(讀者編號,姓名,聯(lián)系電話,所在系,讀者類型,權(quán)限狀況) 2.圖書(書籍編號,書籍名稱,作者,出版社,出版日期,封面,價格,藏書類型,學科類型) 3.管理員(編號,密碼,賬號) 4.藏書類型 5.學科類型 6.讀者類型: 上面的各個實體和關(guān)系之間的關(guān)系圖: (三)邏輯設(shè)計 將ER模型簡化為關(guān)系模型,指出每個關(guān)系的主鍵,外鍵和必要約束。 關(guān)系模型為: 讀者(讀者編號,姓名,聯(lián)系電話,所在系,讀者類型,權(quán)限狀況) 主鍵為讀者編號 圖書(書籍編號,書籍名稱,作者,出版社,出版日期,封面,價格,藏書類型,學科類型)
6、主鍵為書籍編號 管理員(編號,密碼,賬號) 主鍵為編號。 應(yīng)用關(guān)系規(guī)范化理論對上述產(chǎn)生的關(guān)系模式進行優(yōu)化,具體步驟如下: (1)確定每個關(guān)系模式內(nèi)部各個屬性之間的數(shù)據(jù)依賴以及不同關(guān)系模式屬性之間的數(shù)據(jù)依賴。 (2)對各個關(guān)系模式之間的數(shù)據(jù)依賴進行最小化處理,消除冗余的聯(lián)系。 (3)確定各關(guān)系模式的范式等級。 (4)按照需求分析階段得到的處理要求,確定要對哪些模式進行合并或分解。 (5)為了提高數(shù)據(jù)操作的效率和存儲空間的利用率,對上述產(chǎn)生的關(guān)系模式進行適當?shù)男薷摹⒄{(diào)整和重構(gòu)。 (四)寫出數(shù)據(jù)庫的物理設(shè)計 表的結(jié)構(gòu)設(shè)計等。 1.讀者表 序號 字段名稱 字段類型 字段長度 備注 1 讀者編號 Var
7、char 20 主鍵 2 姓名 Varchar 20 不可空 3 聯(lián)系電話 Varchar 20 不可空 4 所在系 Varchar 20 不可空 5 讀者類型 Varchar 20 6 權(quán)限狀況 Varchar 20 2.圖書表 序號 字段名稱 字段類型 字段長度 備注 1 書籍編號 Varchar 20 主鍵 2 書籍名稱 Varchar 20 不可空 3 作者 Varchar 20 不可空 4 出版社 Varchar 20 不可空 5 出版日期 datetime 20 不可空 6 封面 7 價格 Varchar 20 8 藏書類型 Varchar 20 9 學科類型 Varchar 20
8、 3.借書信息表 4. 序號 字段名稱 字段類型 字段長度 備注 1 狀態(tài) Varchar 20 主鍵 2 借閱次數(shù) Int 4 不可空 3 借書日期 datetime 0 不可空 4 還書日期 datetime 0 不可空 4.罰款信息表: 5. 序號 字段名稱 字段類型 字段長度 備注 1 罰款日期 datetime 0 2 罰款價格 int 4 (五)T-SQL命令方式建立數(shù)據(jù)庫 1.創(chuàng)建數(shù)據(jù)庫 (1)創(chuàng)建名為book的數(shù)據(jù)庫。 如下圖所示: 如上圖成功創(chuàng)建了book數(shù)據(jù)庫。 2.在數(shù)據(jù)庫中創(chuàng)建表 創(chuàng)建讀者信息表: 創(chuàng)建圖書信息表: 創(chuàng)建圖書借閱表: 罰款信息表: 表全部創(chuàng)建完之后,刷新
9、數(shù)據(jù)庫,可以看到這些表: 3、在數(shù)據(jù)庫中創(chuàng)建索引。 說明:索引包含“唯一性索引”,“主鍵索引”,“聚集索引”。 因為生成的表的時候系統(tǒng)自動的為每一個表設(shè)置了“主鍵索引”如圖所示, “聚集索引”是指表中的各記錄的物理順序與鍵值的邏輯順序一致。一張表中只能有一個“聚集索引”。而系統(tǒng)中的這個主鍵索引也是聚集索引,所以不能再對表格創(chuàng)建聚集索引。 所以我下面創(chuàng)建的是唯一性索引,全部都是非聚集索引。 (1)在讀者信息表中創(chuàng)建了一個按“姓名”列建立的唯一索引“sno” 說明:這里創(chuàng)建的是唯一索引,唯一索引的含義是對于表中的任何兩行記錄來說, 索引鍵的值都各不相同。并且要注意,如果表中一個字段或者多個字段的組
10、合在多行 記錄中具有NULL值,則不能將這個字段或者字段組合作為唯一索引鍵。因為對于每 一個表的主鍵系統(tǒng)都自動的設(shè)置了相應(yīng)的索引,在“客戶表”中,身份證號是絕對不 能相同的,所以可以設(shè)置為唯一索引鍵。 (2)在圖書信息表中創(chuàng)建了一個按“書籍編號”列建立的唯一索引“INDS” (3)在借閱信息表中創(chuàng)建了一個按“借閱日期”列建立的唯一索引“time” (4)在罰款信息表中創(chuàng)建了一個按“罰款金額”列建立的唯一索引“price” 實驗步驟: (5)檢驗索引已經(jīng)創(chuàng)建成功 4、約束的創(chuàng)建。 說明:約束是SQL Server提供的自動保持數(shù)據(jù)庫中的數(shù)據(jù)完整性的一種機制。它包含6種形式,分別是“主鍵約束”,“
11、外鍵約束”,“唯一性約束”,“檢查約束”,“默認約束”,“非空值約束”。 因為“主鍵約束”和“非空值約束”是在創(chuàng)建表的時候就已經(jīng)創(chuàng)建了的,所以下面就不再討論這兩個。 一般而言,“外鍵約束”也是在創(chuàng)建表的時候就直接創(chuàng)建的,但是我這里沒有創(chuàng)建,還可以用更改表的方法來創(chuàng)建,即利用“ALTER TABLE Y¥ADD”語句創(chuàng)建。 唯一約束指的是一個或者多個列的組合的值具有唯一性,它和主鍵索引的唯一區(qū)別就是可以為NULL。因為我在設(shè)置表的時候把那些屬性均置為“不可為空”。所以在該數(shù)據(jù)庫中建立不了唯一約束。 4.1外鍵約束的創(chuàng)建。 為“圖書編號”創(chuàng)建外鍵“圖書號”。 4.2檢查約束的創(chuàng)建 1.為讀者信息表
12、創(chuàng)建的規(guī)定電話的格式檢查約束 2.為借閱信息表創(chuàng)建的日期的格式檢查約束 驗證約束已經(jīng)成功建立: (六)關(guān)系圖設(shè)置顯示,存儲 1.找到數(shù)據(jù)庫關(guān)系圖并右擊新建數(shù)據(jù)庫關(guān)系圖 3.出現(xiàn)下面的界面的時候就把所有的表格全部添加 (七)利用T-SQL命令增加,刪除,修改數(shù)據(jù) 1.對讀者表的增加數(shù)據(jù) 2.對讀者表的刪除數(shù)據(jù) 其他的數(shù)據(jù)添加不是使用的SQL語句,最后讀者表的信息如下圖所示: 讀者表: (八)寫出T-SQL查詢: 1.按照某一個讀者的其中幾個字段的信息: 2.查詢前兩行的數(shù)據(jù) 3.count的查詢方式: 4.where后有條件運算符的查詢: (1)between and (2)exists查詢是在
13、訂單明細表中存在的讀者信息。 (3)In.后面跟的是子查詢。查詢的是在讀者表中存在的讀者信息 (4)Like (九)創(chuàng)建登錄,授予角色 1.SQL Server驗證的創(chuàng)建用戶user1的用戶登錄,登錄密碼是123 ,以及user2 456 然后可以通過這個用戶和賬號登錄到SQL Server數(shù)據(jù)庫中,如下圖所示: 2.計算機windows驗證的創(chuàng)建用戶登錄。 3.添加角色,因為固定服務(wù)器角色是不能添加,刪除或修改,所以只能將用戶登錄添加為固定服務(wù)器角色的成員。 (1)為ueser1添加為固定服務(wù)器角色sysadmin的成員。 然后點開安全性中的sysadmin角色中包含了user1 因為use
14、r1添加了系統(tǒng)管理員sysadmin的角色,所以用可以進行所有的操作,具有所有的權(quán)限。 (九)創(chuàng)建數(shù)據(jù)庫用戶,角色,架構(gòu),授予相應(yīng)的權(quán)限,更改擁有者,收回權(quán)限等 (十) 1.創(chuàng)建數(shù)據(jù)庫用戶 說明:因user1是sysadmin角色,相當于管理員 在user1登錄用戶下創(chuàng)建了user2數(shù)據(jù)庫用戶 2.添加數(shù)據(jù)庫角色成員 3.創(chuàng)建結(jié)構(gòu),為user2授予架構(gòu)的權(quán)限。 4.然后以user2的身份登錄,然后user2就創(chuàng)造了一個架構(gòu)SCI 5.然后我們在user1下,對user2授予創(chuàng)建表格的權(quán)限,然后再授予查詢,刪除,修改表格的權(quán)限。 6.更改架構(gòu)的所有者,將架構(gòu)SCI的所有者由user2更改為DBO. 7.靜止與撤銷權(quán)限。 (十一)創(chuàng)建視圖 1.首先授予創(chuàng)建視圖的權(quán)限給user2 2.創(chuàng)建一個視圖V2,刷新后可以看到dbo.V2的視圖 (十二)創(chuàng)建存儲過程 創(chuàng)建讀者表的存儲過程P1 執(zhí)行存儲過程: 實驗結(jié)果分析及結(jié)論: 實驗正常運行,通過實驗,理解并掌握了數(shù)據(jù)庫設(shè)計的概念、方法和步驟,了解了數(shù)據(jù)庫系統(tǒng)需求分析的內(nèi)容,學會運用ER模型進行概念設(shè)計以及如何將ER模型轉(zhuǎn)換為關(guān)系模型。 了解了
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 豪華大廈租賃合同三篇
- 五彩繽紛的成長路幼兒園工作總結(jié)
- 電競行業(yè)服務(wù)員工作總結(jié)
- 表達能力培養(yǎng)方案計劃
- 學會如何有效地分配學習時間
- 二零二五年度海洋資源項目融資合作協(xié)議書3篇
- 金融行業(yè)顧問工作總結(jié)
- 紡織行業(yè)安全隱患排查
- 二零二五年度個人抵押貸款風險評估合同
- 二零二五個人分紅協(xié)議范本適用于互聯(lián)網(wǎng)平臺分紅合作2篇
- 四川省綿陽市2025屆高三上學期第二次診斷性考試語文試題(含答案)
- 2025年1月 浙江首考英語試卷
- 2025年1月廣西2025屆高三調(diào)研考試英語試卷(含答案詳解)
- 《復(fù)旦大學》課件
- 2024版《安全生產(chǎn)法》考試題庫附答案(共90題)
- 疥瘡病人的護理
- 新員工三級安全教育考試試題參考答案
- 數(shù)學史簡介課件可編輯全文
- 中學安全辦2024-2025學年工作計劃
- 2024年鄉(xiāng)村振興(產(chǎn)業(yè)、文化、生態(tài))等實施戰(zhàn)略知識考試題庫與答案
- 網(wǎng)絡(luò)安全基礎(chǔ)知識入門教程
評論
0/150
提交評論