版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、實驗報告SQL Server數(shù)據(jù)庫課程號:B0990070實驗項目:數(shù)據(jù)庫設(shè)計、創(chuàng)建、管理,數(shù)據(jù)庫操作學(xué)號 姓名 專業(yè)班級 實驗地點指導(dǎo)教師時間評語(要求): 按時完成實驗;實驗內(nèi)容和過程記錄完整;回答問題完整、正確;實驗報告的撰寫認(rèn)真、格式符合要求。成績教師簽字一、實驗?zāi)康?理解并掌握數(shù)據(jù)庫設(shè)計的概念、方法和步驟。2初步應(yīng)用數(shù)據(jù)庫設(shè)計方法。了解需求分析的內(nèi)容。3重點運(yùn)用ER模型進(jìn)行概念設(shè)計,然后將ER模型轉(zhuǎn)換為關(guān)系模型。4深入理解SQL Server 2008數(shù)據(jù)庫的存儲結(jié)構(gòu)。5深入理解SQL Server 2008的數(shù)據(jù)類型、表對象設(shè)計與定義。6掌握SQL Server 2008Manag
2、ement studio的應(yīng)用。運(yùn)用交互方式和命令方式建立數(shù)據(jù)庫和表。7認(rèn)識和掌握Transact-SQL 的數(shù)據(jù)庫操作。8深入理解視圖意義。掌握SQL Server 中創(chuàng)建、管理與應(yīng)用視圖的方法。9深入理解數(shù)據(jù)庫安全的概念。10深入理解SQL Server 2008的安全體系框架。11掌握登錄與服務(wù)器角色的概念、操作與應(yīng)用。掌握數(shù)據(jù)庫用戶、固定角色、自定義角色、架構(gòu)的概念、操作與應(yīng)用。掌握數(shù)據(jù)庫權(quán)限的概念、操作與應(yīng)用。12理解事務(wù)的概念。13深入理解并掌握服務(wù)器編程的意義及方法。14能夠編寫各種自定義函數(shù)和存儲過程。15理解觸發(fā)器,并能夠編寫、應(yīng)用觸發(fā)器。16理解備份與恢復(fù)的意義及基本操作。
3、二、實驗設(shè)備(環(huán)境)及要求PC、 Windows XP、SQL SERVER 2008三、實驗內(nèi)容及要求實驗項目:小型藥店銷售管理系統(tǒng)通過調(diào)查、收集信息、分析,寫出分析與設(shè)計報告。1. 簡要的系統(tǒng)需求分析包括業(yè)務(wù)分析、功能需求分析、信息需求分析。試分析該系統(tǒng)的基本業(yè)務(wù),計算機(jī)信息系統(tǒng)需要完成的基本功能、信息系統(tǒng)需要處理的信息。2. 概念設(shè)計設(shè)計系統(tǒng)的概念模型,采用ER模型。3. 邏輯設(shè)計將ER模型為關(guān)系模型,指出每個關(guān)系的主鍵、外鍵和必要的約束。4. 寫出數(shù)據(jù)庫的物理設(shè)計包括存儲組織結(jié)構(gòu)、表的結(jié)構(gòu)設(shè)計等。5. T-SQL命令方式創(chuàng)建數(shù)據(jù)庫的操作利用SQL命令創(chuàng)建數(shù)據(jù)庫文件、表、索引、聯(lián)系和主鍵
4、、外鍵等約束。(實驗報告應(yīng)寫出實驗的過程,包括必要的截圖。)6. 利用T-SQL命令增加、刪除、修改數(shù)據(jù)。7. 利用T-SQL命令進(jìn)行數(shù)據(jù)的檢索和統(tǒng)計根據(jù)自己設(shè)計的數(shù)據(jù)庫和輸入的數(shù)據(jù),寫出至少10個查詢要求及對應(yīng)的SQL查詢命令,應(yīng)該包含如下功能:投影和選擇;多表連接;分組統(tǒng)計與HAVING;子查詢;查詢結(jié)果保存。8. 利用SQL命令創(chuàng)建視圖對象根據(jù)開發(fā)的系統(tǒng)的需要,至少設(shè)計三個視圖:基于單表的、包含多表連接的、包含統(tǒng)計運(yùn)算的。利用SQL對視圖進(jìn)行查詢。9. 對視圖進(jìn)行插入、刪除、修改數(shù)據(jù)操作。體會視圖與表的異同。10. 編寫自定義函數(shù)。(1)編寫一個自定義函數(shù),將一個字符串作為自變量,返回顛
5、倒順序的字符串。寫出源代碼。(2) 編寫一個自定義函數(shù),能夠?qū)崿F(xiàn)參數(shù)化查詢的功能。自己設(shè)定函數(shù)的具體要求,然后編寫出來。11. 編寫利用游標(biāo)進(jìn)行數(shù)據(jù)處理的存儲過程。并在存儲過程中應(yīng)用事務(wù)的概念。自己確定過程的具體要求,然后編寫出來。12. 編寫一個實現(xiàn)修改表的觸發(fā)器,實現(xiàn)完整性控制。13. 設(shè)置服務(wù)器身份驗證模式。用命令創(chuàng)建若干不同驗證模式的登錄賬戶。14. 將部分登錄賦予服務(wù)器角色。然后撤消。15. 將部分登錄映射到你的數(shù)據(jù)庫中成為用戶。16. 創(chuàng)建自定義角色、架構(gòu)。17. 通過角色給用戶授權(quán)。18. 直接給用戶授權(quán),驗證其獲得權(quán)限前后的操作差別。19. 刪除用戶和自定義的角色。四、回答問題
6、1你如何認(rèn)識需求分析在系統(tǒng)開發(fā)中的地位和重要性?答: 需求分析是系統(tǒng)開發(fā)的重要環(huán)節(jié),其目的是通過調(diào)查分析,把用戶的信息和功能描述轉(zhuǎn)化為開發(fā)員所能理解的功能描述,并在用戶需求的基礎(chǔ)上去除不合理的地方,補(bǔ)充系統(tǒng)缺失的地方,最后為系統(tǒng)的概要設(shè)計,詳細(xì)設(shè)計提供準(zhǔn)確,有效的數(shù)據(jù)基礎(chǔ)。在需求分析中要把系統(tǒng)所要處理的業(yè)務(wù)理解透徹,并把其中的信息整理歸類。然后還需要把整個系統(tǒng)所要實現(xiàn)的功能的邏輯思路理清楚,這些工作都是系統(tǒng)開發(fā)能夠繼續(xù)做下去的基礎(chǔ)。如果需求分析沒有做好,或者說對整個系統(tǒng)的總體框架不明晰,最終的系統(tǒng)就不能達(dá)到開發(fā)目標(biāo)。2設(shè)計ER圖、關(guān)系模型分別屬于數(shù)據(jù)庫設(shè)計的哪一階段?答:ER圖屬于概念設(shè)計階段
7、;關(guān)系模型處于邏輯設(shè)計階段3主鍵、外鍵對于關(guān)系數(shù)據(jù)庫的意義何在?答:主鍵是關(guān)系中能唯一區(qū)分、確定不同元組的單個屬性或者屬性組合。 外鍵能夠保證數(shù)據(jù)庫的數(shù)據(jù)的完整性和唯一性,通過外鍵,那個將相互關(guān)聯(lián)的表連接 起來。4在數(shù)據(jù)庫存儲結(jié)構(gòu)設(shè)計時要考慮哪些因素?答:首先要考慮數(shù)據(jù)的存放位置和存儲結(jié)構(gòu),包括:確定關(guān)系、索引、聚簇、日志、備份等的存儲安排,確定系統(tǒng)配置。同時要綜合考慮存取時間、存儲空間利用率和維護(hù)代價3個方面的因素。5在表設(shè)計時對于數(shù)據(jù)類型的選擇和使用如何考慮?答:首先要清楚理解數(shù)據(jù)庫中各種數(shù)據(jù)類型的用法和范圍,然后應(yīng)該根據(jù)字段的實際類型來考慮數(shù)據(jù)類型,還要估計表中數(shù)據(jù)的大小范圍,來確定數(shù)據(jù)
8、類型的大小,避免空間不足或者浪費(fèi)。6. 交互式如何實現(xiàn)表之間的聯(lián)系?SQL命令如何實現(xiàn)表之間的聯(lián)系?答: (1)交互式:單擊工具欄上的“關(guān)系”按鈕,打開“外鍵關(guān)系”對話框,在其中設(shè)置各表間關(guān)系。 (2)SQL命令:ALTER TABLE ADD CONSTRAINT constraint_name PRIMARYKEYCLUSTERED|NONCLUSTERED FOREIGN KEY REFERENCES referenced_table7 如果在定義表時進(jìn)行了主鍵、外鍵以及約束等完整性設(shè)置,對于數(shù)據(jù)的輸入有何影響?試舉例說明。 答:定義主鍵 :定義主鍵來強(qiáng)制不允許空值的指定列中輸入值的唯一
9、性。如果在數(shù)據(jù)庫中為表定義了主鍵,則可將該表與其它表相關(guān),從而減少冗余數(shù)據(jù)。表只能有一個主鍵。定義外鍵:外鍵引用完整性表示得到正常維護(hù)的表之間的關(guān)系。表中的數(shù)據(jù)只應(yīng)指向另一個表中的現(xiàn)有行,不應(yīng)指向不存在的行。主鍵約束:使用單列或者多列組合,表示每一條記錄的唯一性,值不能為空;外鍵約束:是為了加強(qiáng)數(shù)據(jù)表之間的關(guān)鍵的表中的單列或者多列值,必須依賴另外的表存在;唯一約束:不允許數(shù)據(jù)庫中的某一列數(shù)據(jù)有重復(fù),但是允許有空值存在。 主鍵和外鍵一般不允許為空,如果沒有輸入值的話會報錯,比如“性別”這一字段,如果開發(fā)人員已經(jīng)約束了其值只能為“男”或“女”,當(dāng)使用者輸入除以上兩個值外的任何值都會報錯。8用INS
10、ERT INTO 命令輸入,如果數(shù)據(jù)與字段數(shù)量和要求不一致有什么問題?當(dāng)表定義中有默認(rèn)值的時候,插入記錄是否可以省略該字段的數(shù)據(jù)?答:如果數(shù)據(jù)與字段數(shù)量和要求不一致,只有在少于并且沒有寫出的那個已定義了默認(rèn)值或者可為空的情況下才正確,其他情況都是錯誤的。當(dāng)表定義中有默認(rèn)值的時候,插入記錄旅游省略該字段的數(shù)據(jù)。9HAVING子句有什么作用?答: HAVING字句與WHERE子句一樣都是實現(xiàn)查詢功能中條件的控制和數(shù)據(jù)的篩選,WHERE子句不能包含聚集函數(shù),而HAVING子句一般包含聚集函數(shù)。HAVING子句還可以用來對分組結(jié)果進(jìn)行篩選。10當(dāng)通配字符作為普通字符參與匹配查詢時,如何解決這樣的問題?
11、答: a.通過在ESCAPE字句中指定轉(zhuǎn)義符、在查詢條件下使用轉(zhuǎn)義符指定某個通配字符是正常字符; b.將通配符用括起來,指定一個字符、字符串或范圍,要求所匹配對象為它們中任意一個。11可否利用視圖進(jìn)行數(shù)據(jù)的插入、刪除、修改? 答:視圖是一張表,所以對表的插入、刪除、更新和查詢操作原則上都可以在視圖上進(jìn)行。但是,視圖是基于表的,對視圖的操作要轉(zhuǎn)化為對表的操作,這樣,視圖在使用上有諸多規(guī)定和限制。對由多表連接成的視圖修改數(shù)據(jù)時,不能同時影響一個以上的基表,也不能刪除視圖中的數(shù)據(jù)。對視圖上的某些列不能修改,如計算列,內(nèi)置函數(shù)列和行集合函數(shù)列,對具有NOT NULL的列進(jìn)行修改時可能會出錯。通過視圖修
12、改或者插入數(shù)據(jù)時,必須保證未顯示的具有NOT NULL屬性的列有值,可以是默認(rèn)值等,否則不能向視圖中插入數(shù)據(jù)行。如果某些列因為規(guī)則或者約束的限制不能接受從視圖插入的數(shù)據(jù)時,則插入數(shù)據(jù)可能會失敗。12根據(jù)自己的體會,談?wù)勔晥D在數(shù)據(jù)庫體系中的作用。 答:視圖是一個虛表,其內(nèi)容由查詢定義。利用視圖可以簡化用戶操作數(shù)據(jù)的方式??蓪⒔?jīng)常使用的連接、投影、聯(lián)合查詢和選擇查詢定義為視圖,這樣每次對特定的數(shù)據(jù)執(zhí)行進(jìn)一步操作時,不必指定所有條件和限定。除此之外還可以定制數(shù)據(jù),導(dǎo)出數(shù)據(jù)。還可以用GRANT和REVOKE命令為各種用戶授予在視圖上的操作權(quán)限,這樣通過視圖,用戶只能查詢或修改他們各自所能見到的數(shù)據(jù),數(shù)
13、據(jù)庫中的其他數(shù)據(jù)對他們來說是不可見的或不可修改的。保證了數(shù)據(jù)庫的安全性。13視圖是如何保存的?視圖中的數(shù)據(jù)是否真的存儲在文件中?答:視圖是一個虛表,是以腳本的形式存在數(shù)據(jù)庫中,其中的數(shù)據(jù)仍然是原來表的數(shù)據(jù)。視圖中的數(shù)據(jù)仍然是表中的數(shù)據(jù),并不真的存儲在文件中。 14SQL SERVER有幾種身份驗證模式?區(qū)別是什么?不同驗證模式的登錄賬戶有何區(qū)別?答:SQL SERVER提供了兩種對數(shù)據(jù)庫資源的訪問進(jìn)行身份驗證的模式:Windows身份驗證模式和混合的驗證模式。Windows身份驗證模式:是默認(rèn)的驗證模式,使用windows操作系統(tǒng)的安全機(jī)制驗證用戶身份,只要用戶能夠通過windows用戶賬號驗
14、證,并且是SQL Server的登錄賬戶,即可連接到SQL Server而不用進(jìn)行身份驗證,只適用于能夠提供有效身份驗證的windows操作系統(tǒng)?;旌系尿炞C模式:在混合的驗證模式下,Windows用戶和SQL用戶都可以訪問數(shù)據(jù)庫實例。需要為非Windows用戶提供訪問權(quán)限時就使用混合的驗證模式。若用戶需要使用SQL Server驗證模式,則需要將服務(wù)器設(shè)置為混合驗證模式。15Sa賬戶有何特點? 答:“Sa”賬戶是采用SQL Server驗證模式的SQL Server 系統(tǒng)管理員登錄賬戶,該賬戶擁有最高的管理權(quán)限,可以執(zhí)行服務(wù)器范圍內(nèi)的所有操作。它是以SQL Server身份驗證的,所以必須設(shè)置
15、一個密碼。同時,Sa賬戶的屬性不可以更改,密碼可以修改。Sa登錄時無法刪除的。16共有幾種服務(wù)器角色?最高權(quán)限的角色是什么?能夠創(chuàng)建數(shù)據(jù)庫的角色是哪個?答:共有8種固定服務(wù)器角色,分別是:sysadmin,serveradmin,setupadmin,securityadmin,processadmin,dbcreator,diskadmin,bulkadmin;同時每一個登錄用戶都屬于public服務(wù)器角色。最高權(quán)限的角色是sysadmin;能夠創(chuàng)建數(shù)據(jù)庫的角色是:sysadmin,dbcreator。 17數(shù)據(jù)庫用戶和登錄賬戶有什么關(guān)系?guest是什么用戶?有何作用?答:這是兩種不同級別
16、的安全機(jī)制,登錄賬戶是SQL Server級的安全性設(shè)置,而數(shù)據(jù)庫用戶則是數(shù)據(jù)庫級的安全性設(shè)置。登錄賬戶用于登錄服務(wù)器,但是當(dāng)某一用戶要訪問某個數(shù)據(jù)庫時,除了可以成為服務(wù)器的一個登錄以外,還必須成為這個數(shù)據(jù)庫的用戶賬戶,即獲得一定的授權(quán)。數(shù)據(jù)庫用戶賬號在一般情況下是從某個登錄賬戶中映射過來的。guest是來賓用戶,是用來共享文件的。任何一個登錄都可以以此身份訪問數(shù)據(jù)庫。guest自動本身只具有public權(quán)限。也可以由其他用戶授權(quán)。18數(shù)據(jù)庫角色有哪兩類?PUBLIC角色有何特點?答:數(shù)據(jù)庫角色分為固定數(shù)據(jù)庫角色和用戶定義的數(shù)據(jù)庫角色。每個數(shù)據(jù)庫都有一系列固定數(shù)據(jù)庫角色。雖然每個數(shù)據(jù)庫中都存在
17、名稱相同的角色,但各個角色的作用域只是在特定的數(shù)據(jù)庫內(nèi)。用戶定義數(shù)據(jù)庫角色是用戶根據(jù)工作的職能定義一系列角色,并給每個角色指派了適合這項工作的權(quán)限。從而在數(shù)據(jù)庫中管理這些權(quán)限。public角色有兩大特點:第一,數(shù)據(jù)庫創(chuàng)建時自動生成,初始時沒有權(quán)限,但可以為pbulic角色授予權(quán)限;第二,所有的數(shù)據(jù)庫用戶自動都是它的成員。由于所有用戶都是public角色成員,因此數(shù)據(jù)庫中所有用戶都會自動繼承角色的權(quán)限。當(dāng)為public角色授予權(quán)限時,實際上就是為所有數(shù)據(jù)庫用戶授權(quán)。不能刪除public角色,也無法再將用戶或組指派給該角色,它們默認(rèn)屬于該角色。19用戶與架構(gòu)有什么關(guān)系?系統(tǒng)默認(rèn)架構(gòu)是什么?怎樣為用
18、戶指定架構(gòu)?答:用戶并不直接擁有數(shù)據(jù)庫對象,架構(gòu)擁有數(shù)據(jù)庫對象。用戶通過架構(gòu)來使用數(shù)據(jù)庫對象。這種機(jī)制使得刪除用戶時不必修改數(shù)據(jù)庫對象的所有者,提高了數(shù)據(jù)庫對象的可管理性。用戶不直接擁有數(shù)據(jù)庫對象,數(shù)據(jù)庫對象的直接所有者是架構(gòu),用戶通過架構(gòu)擁有數(shù)據(jù)庫對象.而在SQL Server 2005中構(gòu)架和用戶是不同的實體。一個對象只能屬于一個架構(gòu),就像一個文件只能存放于一個文件夾中一樣。與文件夾不同的是,架構(gòu)是不能嵌套的。系統(tǒng)默認(rèn)架構(gòu)是dbo架構(gòu);通過使用CREATE USER 和ALTER USER 語句,可以分配一個默認(rèn)架構(gòu);或者通過SSMS在該用戶的屬性下面分配一個默認(rèn)架構(gòu)。20. 什么是安全對
19、象?怎樣為數(shù)據(jù)庫用戶指定查詢表的權(quán)限?答:安全對象是SQL Server 數(shù)據(jù)庫引擎授權(quán)系統(tǒng)控制對其進(jìn)行訪問的資源。安全對象范圍有服務(wù)器、端點和架構(gòu)。為指定數(shù)據(jù)庫用戶授予table的權(quán)利,然后在下面的權(quán)限中選擇select。語法 GRANT ALL PRIVILEGES | 權(quán)限名 ( 列名 ,n ) ,n ON class : 安全對象 TO 安全主體 ,n TO 安全主體 ,n WITH GRANT OPTION AS 安全主體 21簡述自定義函數(shù)、存儲過程和觸發(fā)器的異同。答:自定義函數(shù)、存儲過程、和觸發(fā)器都是模塊化設(shè)計的類型。自定義函數(shù):最后是返回一個值,就像普通函數(shù)一樣,可以直接在表達(dá)
20、式中調(diào)用,定義函數(shù)時要定義函數(shù)的函數(shù)名、參數(shù)、函數(shù)值類型和函數(shù)體。存儲過程:是一個可重用的代碼模塊,可以高效率的完成指定的操作。存儲過程可以沒有返回值,也可以有任意個輸出參數(shù),必須單獨調(diào)用。觸發(fā)器:實質(zhì)是一種特殊類型的存儲過程,它在插入、修改或刪除時觸發(fā)執(zhí)行。能夠?qū)崿F(xiàn)由主鍵和外鍵所不能保證的參照完整性和數(shù)據(jù)的一致性。22什么是游標(biāo)?應(yīng)用游標(biāo)的步驟是什么?答:游標(biāo)是一種處理數(shù)據(jù)的方法,它可以對結(jié)果集進(jìn)行逐行處理,也可以指向結(jié)果集中的任意位置,并對該位置的數(shù)據(jù)進(jìn)行處理。應(yīng)用游標(biāo)的步驟:(1)聲明游標(biāo) (2)打開游標(biāo),即把外存上的數(shù)據(jù)調(diào)入內(nèi)存,運(yùn)行查詢(3)提取數(shù)據(jù) (4)關(guān)閉游標(biāo)(5)釋放游標(biāo) 2
21、3. 有哪幾種恢復(fù)模式和幾種備份類型?答:恢復(fù)模式有3種:簡單恢復(fù)模式、完整恢復(fù)模式和大容量日志恢復(fù)模式。 備份類型也有3種:完整備份、差異備份和事務(wù)日志備份。五、分析討論這次實驗我覺得最重要的是系統(tǒng)分析,邏輯設(shè)計和物理設(shè)計時一定要認(rèn)真想清楚每張表的屬性和它們之間的相互聯(lián)系,這樣在后面使用查詢的時候才不會出錯,如果前面沒做好,后面做查詢的時候就會出現(xiàn)各種錯誤,如數(shù)據(jù)結(jié)構(gòu)定義不統(tǒng)一,外鍵沖突等問題。除此之外要做好一個數(shù)據(jù)庫系統(tǒng),要掌握好學(xué)習(xí)中的每一步,平時上課學(xué)習(xí)很有用,認(rèn)真學(xué)了,做的時候就會比較輕松。然后,我覺得函數(shù)和觸發(fā)器那部分比較難,只會實現(xiàn)簡單的查詢、刪除、修改控制。感覺自己在驗證授權(quán)、
22、存儲過程等方面的基礎(chǔ)及學(xué)習(xí)較為薄弱。 相信經(jīng)過一步一步的學(xué)習(xí),我們能力也會進(jìn)一步提高。以下為本次實驗的過程記錄報告:(可包括截圖) 小型藥店銷售管理系統(tǒng)1. 簡要的系統(tǒng)需求分析 藥店管理系統(tǒng)是非常常用的信息管理系統(tǒng),隨著規(guī)模的擴(kuò)大,傳統(tǒng)的藥店管理模式 已經(jīng)不能適應(yīng)發(fā)展的需要。一個藥店要有一個健全的管理系統(tǒng),來管理藥品的信息,包括藥品編號、藥品名、有效期、庫存量、供應(yīng)商等。除此之外,系統(tǒng)還提供查詢藥品的進(jìn)貨和銷售信息以及顧客信息等,大大提高了藥店對于藥品管理的效率。1.1包括業(yè)務(wù)分析 柜臺信息管理:把藥店分成各個小模塊,各司其事,既分工有合作,使藥店高效運(yùn)行。 藥品信息管理:對藥品進(jìn)行編號,將每
23、一種藥品錄入到藥品信息表中,對新購進(jìn)的藥品,將其信息加入到藥品信息表中。對于缺乏的藥品,要及時的補(bǔ)進(jìn)。對于快過期的藥品,也要及時的進(jìn)行處理。 進(jìn)銷藥品信息管理:同樣的為其進(jìn)行編號,可以讓管理者清楚的了解藥品的進(jìn)銷情況。 供應(yīng)商信息管理:可以適時的與供應(yīng)商取得聯(lián)系,增加藥品庫存量,方便藥店管理。 顧客信息管理:可以管理藥品的銷路,與顧客取得聯(lián)系。 員工信息管理:可以對藥店員工信息進(jìn)行查詢等,知道每個員工的職責(zé)以及柜臺號。1.2功能需求分析 a.藥店的一般柜臺人員可以查看藥品信息。 b.藥庫管理人員可以對所以藥品信息進(jìn)行添加、修改、刪除操作。2. 概念設(shè)計設(shè)計系統(tǒng)的概念模型, ER模型。基本實體及
24、其屬性的ER模型如圖19:柜臺柜臺編號柜臺名 圖1員工工號姓名性別生日電話基本工資職務(wù)柜臺號 圖2供應(yīng)商供應(yīng)商號聯(lián)系方式供應(yīng)商名地址聯(lián)系人 圖3藥品藥品編號供應(yīng)商號藥品名有效期庫存量 圖4顧客顧客姓名顧客編號顧客地址 圖5進(jìn)貨單進(jìn)貨日期進(jìn)貨單號進(jìn)貨員工號 圖6進(jìn)貨明細(xì)進(jìn)貨單號藥品編號金額數(shù)量進(jìn)價序號 圖7銷售單銷售日期銷售單號顧客編號收款員工號 圖8銷售明細(xì)銷售單號藥品編號金額數(shù)量售價序號 圖9員工顧客供應(yīng)商藥品銷售進(jìn)貨管理工作柜臺聯(lián)系柜臺編號柜臺名顧客編號顧客姓名顧客地址工號姓名性別柜臺號職務(wù)藥品編號藥品名供應(yīng)商號銷售單號供應(yīng)商號. 整體E-R圖3. 邏輯設(shè)計將ER模型為關(guān)系模型,指出每個關(guān)
25、系的主鍵、外鍵和必要的約束。1.柜臺(柜臺編號,柜臺名),其中柜臺編號是主鍵;2.員工信息(工號,姓名,性別,生日,柜臺號,職務(wù),基本工資,電話),其中工號是主鍵,柜臺號是外鍵,性別IN(男,女)、基本工資>=1000是約束條件;3.供應(yīng)商(供應(yīng)商號,供應(yīng)商名,地址,聯(lián)系人,聯(lián)系方式),其中供應(yīng)商號是主鍵;4.藥品(藥品編號,藥品名,供應(yīng)商號,有效期,庫存量),其中藥品編號是主鍵,供應(yīng)商號是外鍵,庫存量>= 0是約束條件;5.顧客信息(顧客編號,顧客姓名,顧客地址),其中顧客編號是主鍵;6.進(jìn)貨單信息(進(jìn)貨單號,進(jìn)貨日期,進(jìn)貨員工號),其中進(jìn)貨單號是主鍵,進(jìn)貨員工號是外鍵;7.進(jìn)貨
26、明細(xì)(進(jìn)貨單號,序號,藥品編號,進(jìn)價,數(shù)量,金額),其中進(jìn)貨單號,藥品編號是外鍵, 進(jìn)價>=0, 數(shù)量>=0是約束條件;8. 銷售單信息(銷售單號,銷售日期,顧客編號,收款員工號),其中銷售單號是主鍵,顧客編號收款員工號是外鍵;9. 銷售明細(xì)(銷售單號,序號,藥品編號,售價,數(shù)量,金額),其中銷售單號,藥品編號是外鍵, 31 / 32文檔可自由編輯打印進(jìn)價>=0, 數(shù)量>=0是約束條件;4. 寫出數(shù)據(jù)庫的物理設(shè)計1.具體表的結(jié)構(gòu)設(shè)計如表1-9所示:表1 柜臺表字段名類型長度鍵或索引Null值檢驗參照表說明柜臺編號CHAR4主鍵柜臺名CAHR16表2 員工表字段名類型長度
27、鍵或索引Null值檢驗參照表說明工號CHAR6主鍵姓名CAHR10性別CHAR2男或女生日DATE柜臺號CHAR4外鍵柜臺職務(wù)CHAR10基本工資MONEY>=1000電話VARCHAR16表3 供應(yīng)商表字段名類型長度鍵或索引Null值檢驗參照表說明供應(yīng)商號CHAR10主鍵供應(yīng)商名VARCAHR16地址VARCHAR50 聯(lián)系人CHAR10聯(lián)系方式VARCHAR16表4 藥品表字段名類型長度鍵或索引Null值檢驗參照表說明藥品編號CHAR8主鍵藥品名VARCAHR20供應(yīng)商號CHAR10外鍵供應(yīng)商有效期DATE庫存量INT>=0表5 顧客表字段名類型長度鍵或索引Null值檢驗參照表
28、說明顧客編號CHAR8主鍵顧客姓名CAHR10顧客電話VARCHAR16顧客地址VARCHAR50表6 進(jìn)貨單表字段名類型長度鍵或索引Null值檢驗參照表說明進(jìn)貨單號CHAR10主鍵進(jìn)貨日期DATE進(jìn)貨員工號CHAR6外鍵員工表7 進(jìn)貨明細(xì)表字段名類型長度鍵或索引Null值檢驗參照表說明進(jìn)貨單號CHAR10外鍵進(jìn)貨單序號SMALLINT藥品編號CHAR8外鍵藥品進(jìn)價MONEY>=0數(shù)量SMALLINT>=0金額計算列進(jìn)價*數(shù)量表8 銷售單表字段名類型長度鍵或索引Null值檢驗參照表說明銷售單號CHAR10主鍵銷售日期DATE顧客編號CAHR8外鍵顧客銷售員工號CHAR6外鍵員工表9 銷售明細(xì)表字段名類型長度鍵或索引Null值檢驗參照表說明進(jìn)貨單號CHAR10外鍵進(jìn)貨單序號SMALLINT藥品編號CHAR8外鍵藥品售價MONEY>=0數(shù)量SMALLINT>=0金額計算列進(jìn)價*數(shù)量5. T-SQL命令方式創(chuàng)建數(shù)據(jù)庫的操作利用SQL命令創(chuàng)建數(shù)據(jù)庫文件、表、索引、聯(lián)系和主鍵、外鍵等約束。1. 創(chuàng)建數(shù)據(jù)庫:2. 創(chuàng)建表:3. 索引、聯(liá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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 二手房經(jīng)紀(jì)服務(wù)規(guī)范化合同稿
- 二零二五版礦山工程地質(zhì)勘探與評估承包合同3篇
- 二零二五年藝術(shù)畫廊開業(yè)慶典藝術(shù)品展覽合同3篇
- 2024法律咨詢服務(wù)委托合同
- 2024版商業(yè)園區(qū)物業(yè)管理合同協(xié)議書范文
- 2024牙科醫(yī)療廢物處理服務(wù)合同
- 2024有限責(zé)任公司擔(dān)保合同登記與備案操作規(guī)范3篇
- 2024年高端人才培養(yǎng)與交流合作協(xié)議
- 二零二五年度項目托管合同:甲方委托乙方管理項目的詳細(xì)條款
- 2024年物資采購合同書
- 軟件項目應(yīng)急措施及方案
- 2025河北邯鄲經(jīng)開國控資產(chǎn)運(yùn)營管理限公司招聘專業(yè)技術(shù)人才5名高頻重點提升(共500題)附帶答案詳解
- 中考英語688高頻詞大綱詞頻表
- 九年級初三中考物理綜合復(fù)習(xí)測試卷3套(含答案)
- 水中鋼管樁施工方案
- 上交所期權(quán)投資者綜合試卷考試及答案
- 超市日常工作檢查表
- 電纜熱穩(wěn)定校驗計算書
- 傳熱學(xué)-第一章
- 管理制度評價表(填寫模板)
- 工地設(shè)計代表服務(wù)記錄
評論
0/150
提交評論