版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
第4章關(guān)系數(shù)據(jù)庫管理系統(tǒng)
與T-SQL語言SQLServer數(shù)據(jù)庫創(chuàng)建和維護(hù)T-SQL語言視圖、存儲過程和觸發(fā)器數(shù)據(jù)庫管理和保護(hù)1.數(shù)據(jù)庫系統(tǒng)的組成1)數(shù)據(jù)庫(DataBase,DB)長期存儲在計(jì)算機(jī)內(nèi)有結(jié)構(gòu)的大量的共享的數(shù)據(jù)集合。2)數(shù)據(jù)庫管理系統(tǒng)(DatabaseManagementSystem,DBMS)。專門支持?jǐn)?shù)據(jù)庫創(chuàng)建、管理和使用的軟件系統(tǒng),在操作系統(tǒng)的支持下工作。它實(shí)現(xiàn)了科學(xué)地組織和存儲數(shù)據(jù),高效地獲取和處理數(shù)據(jù)。3)數(shù)據(jù)庫相關(guān)人員:數(shù)據(jù)庫管理員(DataBaseAdministrator,DBA):負(fù)責(zé)數(shù)據(jù)庫的建立、使用和維護(hù)。保證數(shù)據(jù)庫的安全、高效、正常運(yùn)行。系統(tǒng)分析員:負(fù)責(zé)應(yīng)用系統(tǒng)的需求分析和規(guī)范說明,確定系統(tǒng)的軟、硬件配置,完成數(shù)據(jù)庫系統(tǒng)及數(shù)據(jù)庫各級模式概要設(shè)計(jì)。應(yīng)用程序員:負(fù)責(zé)設(shè)計(jì)開發(fā)應(yīng)用系統(tǒng)各功能模塊的編程人員。普通用戶:數(shù)據(jù)庫系統(tǒng)的最終用戶,也是系統(tǒng)分析的參與者。4)硬件。硬件主要是指計(jì)算機(jī)及外圍設(shè)備。5)軟件。軟件主要包括操作系統(tǒng)、各種開發(fā)工具、宿主語言等。2.數(shù)據(jù)庫系統(tǒng)的特點(diǎn)1)數(shù)據(jù)集中管理。所有的數(shù)據(jù)按其內(nèi)在聯(lián)系集中存儲在數(shù)據(jù)庫中,由DBMS管理,能實(shí)現(xiàn)充分的共享,并發(fā)訪問。2)數(shù)據(jù)重復(fù)少。不但節(jié)省存儲空間,更重要的是因?yàn)闆]有冗余,由修改而引起的數(shù)據(jù)不完整性問題可以減少或避免。3)應(yīng)用程序與數(shù)據(jù)獨(dú)立。數(shù)據(jù)庫按數(shù)據(jù)的關(guān)系檢索信息,不受數(shù)據(jù)存儲格式的影響,應(yīng)用程序根據(jù)用戶需要訪問相關(guān)數(shù)據(jù)并按需提供信息服務(wù)??梢詷O大地增加應(yīng)用程序的獨(dú)立性,提高維護(hù)效率。4)提供信息安全保障。DBMS提供統(tǒng)一的安全控制服務(wù)。數(shù)據(jù)庫的訪問者必須是數(shù)據(jù)庫的合法用戶,而且只能根據(jù)用戶所具有的權(quán)限執(zhí)行相應(yīng)的操作。數(shù)據(jù)庫管理系統(tǒng)DBMS負(fù)責(zé)數(shù)據(jù)庫中數(shù)據(jù)的存儲、查找、增加、刪除、修改操作,并維護(hù)數(shù)據(jù)的完整性、并發(fā)性、安全性等。1.數(shù)據(jù)庫管理系統(tǒng)主要的功能1)數(shù)據(jù)定義功能。建立數(shù)據(jù)庫以及定義數(shù)據(jù)庫的模式結(jié)構(gòu)、數(shù)據(jù)庫的完整性約束規(guī)則和安全性控制方式等,這些信息存儲在數(shù)據(jù)字典中,為數(shù)據(jù)庫的運(yùn)行管理提供基本依據(jù)。2)數(shù)據(jù)操縱功能。實(shí)現(xiàn)對數(shù)據(jù)庫的檢索和更新(包括插入、刪除和修改)操作。3)數(shù)據(jù)庫的運(yùn)行管理功能。完成數(shù)據(jù)庫運(yùn)行時的控制和管理功能,包括并發(fā)控制、安全性檢查、完整性約束條件的檢查和執(zhí)行、數(shù)據(jù)庫的內(nèi)部管理和維護(hù)(如索引、數(shù)據(jù)字典的自動維護(hù))等。4)數(shù)據(jù)庫的維護(hù)功能。包括數(shù)據(jù)庫初始數(shù)據(jù)的輸入、轉(zhuǎn)換功能,數(shù)據(jù)庫的存儲、恢復(fù)功能,數(shù)據(jù)庫的重組功能和性能監(jiān)視、分析功能等。這些功能通常是由一些實(shí)用程序完成。5)支持所采用數(shù)據(jù)模式下的數(shù)據(jù)庫語言,用戶和程序可以直接使用這些語言完成以上大部分功能。4.1MicrosoftSQLServer2000概述MicrosoftSQLServer2000(簡稱SQLServer)是Microsoft公司在Windows平臺上開發(fā)的一個基于客戶機(jī)/服務(wù)器(C/S)模式的關(guān)系數(shù)據(jù)庫管理系統(tǒng)。網(wǎng)絡(luò)客戶機(jī)客戶機(jī)SQLServer數(shù)據(jù)庫服務(wù)器客戶機(jī)應(yīng)用程序負(fù)責(zé)商業(yè)邏輯和向用戶提供數(shù)據(jù)。服務(wù)器對數(shù)據(jù)庫的數(shù)據(jù)進(jìn)行操作和管理。4.1.1SQLServer特性
(1)圖形化的操作環(huán)境,易于學(xué)習(xí)和使用。(2)高性能的數(shù)據(jù)庫管理和使用功能。
(3)可伸縮性和高度可用性。
(4)與Internet應(yīng)用的集成。(5)對數(shù)據(jù)倉庫的支持。
a.根據(jù)用戶訪問量動態(tài)使用系統(tǒng)的軟、硬件資源;b.可支持從KB大小的個人數(shù)據(jù)庫到TB數(shù)量級的企業(yè)數(shù)據(jù)庫;c.SQLServe具有維護(hù)7*24小時運(yùn)行的Web站點(diǎn)和企業(yè)系統(tǒng)所需的極高的可用性級別。
數(shù)據(jù)庫引擎提供了豐富且完整的XML支持,利用XML語言可以輕松地存儲和檢索數(shù)據(jù),并將查詢結(jié)果直接用于各種網(wǎng)頁程序。
a.數(shù)據(jù)庫的設(shè)計(jì)、創(chuàng)建、維護(hù)和使用方便和快捷;b.支持高性能的數(shù)據(jù)庫系統(tǒng),并提供充分的數(shù)據(jù)庫完整性保護(hù);c.分布式查詢可以查詢來自不同數(shù)據(jù)源的數(shù)據(jù),從而與SQLServer數(shù)據(jù)庫中的數(shù)據(jù)集成。4.1.2SQLServer主要管理工具SQLServer提供了一整套數(shù)據(jù)庫系統(tǒng)管理工具和實(shí)用程序,打開“開始/程序/MicrosoftSQLServer”菜單即可看到如下所示的SQLServer主要工具:1.服務(wù)管理器(SQLServerServicesManager)SQLServer服務(wù)管理器的作用:啟動、停止或暫停SQLServer服務(wù)器所支持的服務(wù)。服務(wù)有3種狀態(tài):停止(紅色):該服務(wù)沒有啟動,所有與SQLServer連接的客戶端全部斷開。啟動(綠色):服務(wù)正常運(yùn)行,相關(guān)管理和服務(wù)功能可用。暫停(黃色):暫停狀態(tài)時,已連接的客戶端任務(wù)可以完成,不允許新的連接。選擇該復(fù)選框可以在啟動操作系統(tǒng)時自動啟動所選擇的SQLServer服務(wù)。表示服務(wù)管理器處于啟動狀態(tài)表4-1SQLServer提供的主要服務(wù)服務(wù)名稱主要作用支持主要服務(wù)和管理SQLServer(SQLServer數(shù)據(jù)庫引擎服務(wù))是SQLServer的核心服務(wù)組件,是實(shí)際的數(shù)據(jù)庫服務(wù)器,該服務(wù)啟動后,客戶端才可以連接服務(wù)器上。一般的數(shù)據(jù)庫功能都由它提供數(shù)據(jù)管理(創(chuàng)建、維護(hù)數(shù)據(jù)庫等)、T-SQL處理、并發(fā)控制、數(shù)據(jù)完整性控制等SQLServerAgent(SQLServer代理服務(wù))作業(yè)調(diào)度和管理,可支持?jǐn)?shù)據(jù)庫定時、自動備份、維護(hù),監(jiān)視數(shù)據(jù)庫、異常告警等功能,必需和SQLServer服務(wù)一起使用作業(yè)、報(bào)警、操作員等DistributedTransactionCoordinator(分布式事務(wù)處理協(xié)調(diào)器服務(wù)DTC)管理分布式事務(wù),它允許客戶端應(yīng)用程序在一個事務(wù)中包含多個不同的數(shù)據(jù)源分布式事務(wù)處理協(xié)調(diào)器2.企業(yè)管理器(EnterpriseManager)
SQLServer企業(yè)管理器是可視化的數(shù)據(jù)庫管理工具,使用企業(yè)管理器可以對SQLServer服務(wù)器、數(shù)據(jù)庫及數(shù)據(jù)庫對象進(jìn)行各種有效的管理,執(zhí)行所有的SQLServer管理任務(wù)。
企業(yè)管理器采用了樹型結(jié)構(gòu)列表界面:“控制臺根目錄”—〉“數(shù)據(jù)庫服務(wù)器組”—〉“數(shù)據(jù)庫服務(wù)器”—〉“數(shù)據(jù)庫”—〉“數(shù)據(jù)庫對象”(表、視圖等)
3.查詢分析器(SQLQueryAnalyzer)
SQLServer查詢分析器用于SQLServer分析并執(zhí)行T-SQL語句。用戶以交互方式輸入和執(zhí)行T-SQL語句或由T-SQL語句構(gòu)成的程序段或存儲過程,可立即看到執(zhí)行結(jié)果,從而實(shí)現(xiàn)對數(shù)據(jù)庫的操作和管理。
有兩種方法進(jìn)入查詢分析器:
(1)在企業(yè)管理器窗口中選擇“工具/SQL查詢分析器”菜單啟動。
(2)從Windows“開始/程序”選擇SQLServer程序組中啟動。
注意:啟動時首先出現(xiàn)數(shù)據(jù)庫服務(wù)器連接對話框,在正確完成SQLServer的登錄認(rèn)證后才能啟動查詢分析器。菜單欄
對象瀏覽器:進(jìn)行數(shù)據(jù)庫維護(hù)和操作SQL語句編輯器
執(zhí)行結(jié)果顯示窗口工具條
在SQL編輯窗口進(jìn)行SQL語句或SQL語句段的編輯。單擊按鈕執(zhí)行SQL語句。單擊按鈕或選擇“文件/保存”命令將SQL編輯窗口中的腳本以SQL為擴(kuò)展名保存起來。單擊按鈕或選擇“文件/打開”命令可打開以SQL為擴(kuò)展名的文本文件,打開以后,單擊即可執(zhí)行其中的腳本。在查詢分析器中:4.SQLServer聯(lián)機(jī)叢書4.2SQLServer數(shù)據(jù)庫創(chuàng)建和維護(hù)
1.數(shù)據(jù)庫中的對象
從邏輯上看,SQLServer數(shù)據(jù)庫是由一組存儲、管理和使用數(shù)據(jù)的對象構(gòu)成。數(shù)據(jù)庫的對象:表(Table)索引(Index)默認(rèn)(Default)約束(Constraint)視圖(View)存儲過程(StoredProcedure)觸發(fā)器(Trigger)用戶(User)、角色(Role)用戶定義的數(shù)據(jù)類型、用戶定義的函數(shù)4.2.1SQLServer數(shù)據(jù)庫
SQLServer有兩類數(shù)據(jù)庫:(1)系統(tǒng)數(shù)據(jù)庫:存放SQLServer工作時所需要的的系統(tǒng)級信息。數(shù)據(jù)庫主要作用master從整體上控制SQLServer系統(tǒng)和用戶數(shù)據(jù)庫的運(yùn)行。保存登錄標(biāo)識、系統(tǒng)配置、用戶數(shù)據(jù)庫基本信息等。該庫非常重要,應(yīng)設(shè)置權(quán)限禁止一般用戶訪問,另外要及時備份model是新建數(shù)據(jù)庫的模板,包含了每個用戶數(shù)據(jù)庫都需要的一些系統(tǒng)表,SQLServer以它為基礎(chǔ)創(chuàng)建新的數(shù)據(jù)庫msdb支持SQLServerAgent服務(wù),它記錄有關(guān)作業(yè)、警報(bào)、操作員等信息tempdb是一個臨時數(shù)據(jù)庫,它為SQLServer的查詢、存儲過程等的執(zhí)行提供臨時存儲(2)用戶自定義數(shù)據(jù)庫:用戶根據(jù)數(shù)據(jù)管理的需要建立的數(shù)據(jù)庫,由用戶自行創(chuàng)建和維護(hù)。
SQLServer提供兩個樣本數(shù)據(jù)庫:pubs(圖書出版的數(shù)據(jù)庫)Northwind(有關(guān)貿(mào)易公司的數(shù)據(jù)庫)(1)文件:數(shù)據(jù)庫文件可分為三類:2.?dāng)?shù)據(jù)庫的物理存儲結(jié)構(gòu)
指數(shù)據(jù)庫文件在磁盤上的存儲方式。主數(shù)據(jù)文件:用來存儲數(shù)據(jù)以及數(shù)據(jù)庫的啟動信息。每個數(shù)據(jù)庫都包含一個且只能包含一個主數(shù)據(jù)文件。主數(shù)據(jù)文件使用.MDF為擴(kuò)展名。次數(shù)據(jù)文件:用來存儲不能置于主數(shù)據(jù)文件中的其他數(shù)據(jù)。次數(shù)據(jù)文件使用.NDF為擴(kuò)展名。事務(wù)日志文件:記錄SQLServer執(zhí)行的所有事務(wù)以及由這些事務(wù)操作引起的數(shù)據(jù)庫的變化。事務(wù)日志文件使用.LDF為擴(kuò)展名。每個數(shù)據(jù)庫至少包含兩個文件:主數(shù)據(jù)文件和事務(wù)日志文件。(2)文件組
文件組是用戶對數(shù)據(jù)庫文件(不包括事務(wù)日志文件)進(jìn)行分組而形成的。例如:將存儲在兩個不同驅(qū)動器上的數(shù)據(jù)庫文件組成一個組對它們整體進(jìn)行管理。SQLServer提供了兩種文件組類型:
用戶自定義文件組:指在創(chuàng)建或更改數(shù)據(jù)庫時,用戶明確創(chuàng)建的任何文件組
主文件組:包含主數(shù)據(jù)文件和任何其它未放入其他文件組中的文件。所有系統(tǒng)表都包含在主文件組中。(1)每個數(shù)據(jù)庫中都有一個文件組作為默認(rèn)文件組運(yùn)行??梢灾付J(rèn)文件組,如果沒有指定默認(rèn)文件組,則主文件組是默認(rèn)文件組。說明:(2)若不指定用戶定義文件組,則所有數(shù)據(jù)文件都包含在主文件組中。(3)一個文件只能是一個文件組的成員。4.2.2數(shù)據(jù)庫創(chuàng)建與維護(hù)
1.通過企業(yè)管理器創(chuàng)建數(shù)據(jù)庫
【例4-1】創(chuàng)建數(shù)據(jù)庫School
它包含主數(shù)據(jù)文件School_Data.MDF,其初始大小為5MB,事務(wù)日志文件School_Log.LDF,并將這兩個文件建立在D:\DBSchool文件夾下(如果該文件夾不存在,需要先在我的電腦中創(chuàng)建,否則會報(bào)錯),其他按照默認(rèn)設(shè)置不變。
操作步驟如下:(1)在企業(yè)管理器窗口右單擊“數(shù)據(jù)庫”或任一數(shù)據(jù)庫名,從快捷菜單中選擇“新建數(shù)據(jù)庫”命令,將彈出“數(shù)據(jù)庫屬性”對話框。
(2)在常規(guī)選項(xiàng)卡的“名稱”文本框中輸入要創(chuàng)建的數(shù)據(jù)庫名稱“School”。
(3)選擇“數(shù)據(jù)文件”選項(xiàng)卡,在“數(shù)據(jù)文件屬性”頁面中,修改數(shù)據(jù)庫文件位置為D:\DBSchool及數(shù)據(jù)文件名School_Data.MDF,并修改初始文件大小5MB。(4)選擇“事務(wù)日志”選項(xiàng)卡,在“日志文件屬性”頁面中重新設(shè)置日志文件的位置為D:\DBSchool。(5)單擊【確定】按鈕,即創(chuàng)建了School數(shù)據(jù)庫。
2.通過企業(yè)管理器修改數(shù)據(jù)庫
數(shù)據(jù)庫創(chuàng)建后,數(shù)據(jù)文件和日志文件名就不能改變了。對已存在的數(shù)據(jù)庫可以進(jìn)行如下的修改:增加或刪除數(shù)據(jù)文件;改變數(shù)據(jù)文件的大小和增長方式;改變?nèi)罩疚募拇笮『驮鲩L方式;增加或刪除日志文件;增加或刪除文件組。操作步驟如下:
右單擊需要修改的數(shù)據(jù)庫,在快捷菜單中選擇“屬性”命令,彈出“數(shù)據(jù)庫屬性”界面。通過“數(shù)據(jù)文件”選項(xiàng)卡:可以修改已有數(shù)據(jù)文件的已分配空間、增長方式、最大大小等屬性。增加數(shù)據(jù)文件(增加的文件是次數(shù)據(jù)文件,擴(kuò)展名是.NDF)刪除數(shù)據(jù)文件。(2)通過“文件組”選項(xiàng)卡:增加文件組刪除文件組注意:不能刪除主文件組(PRIMARY)??梢詣h除用戶定義的文件組,但必須首先刪除該文件組中的所有文件。3.在企業(yè)管理器中刪除數(shù)據(jù)庫
(1)右單擊要刪除的數(shù)據(jù)庫,在彈出的快捷菜單上選擇“刪除”命令。(2)在彈出的對話框中單擊【確定】按鈕,即可刪除選定的數(shù)據(jù)庫。
操作步驟如下:
4.2.3數(shù)據(jù)表創(chuàng)建與維護(hù)
創(chuàng)建數(shù)據(jù)表的一般過程:
◆設(shè)計(jì)表結(jié)構(gòu)◆定義字段
輸入字段
定義字段類型
定義字段屬性編輯字段
◆保存表
◆輸入數(shù)據(jù)
1.SQLServer數(shù)據(jù)類型
l整型:整型數(shù)據(jù)類型用于存儲整數(shù),有4種整型分別用于存儲不同范圍的整數(shù)
數(shù)據(jù)類型數(shù)據(jù)范圍占用存儲空間bigint-263~263-18個字節(jié)int-231~231-14個字節(jié)smallint-215~215-12個字節(jié)tinyint0~2551個字節(jié)float和real是近似數(shù)值型,采用科學(xué)計(jì)數(shù)法表示數(shù)據(jù)。decimal和numeric是精確數(shù)值類型。兩者的區(qū)別在于decimal不能應(yīng)用于帶有Identity的列。聲明精確數(shù)值型數(shù)據(jù)的格式如下:decimal|numeric(p[,s]),其中:p為精度,s為小數(shù)位數(shù),s的默認(rèn)值為0。例如,表達(dá)345.65所對應(yīng)的數(shù)據(jù)精度的聲明為decimal(5,2)
或numeric(5,2)l浮點(diǎn)型:用于存儲含小數(shù)的十進(jìn)制數(shù)。
數(shù)據(jù)類型數(shù)據(jù)范圍精確度占用存儲空間float-1.79E+308~1.79E+308可精確到第15位小數(shù)8個字節(jié)real-3.40E+38~3.40E+38可精確到第7位小數(shù)4個字節(jié)decimal-1038+1~1038-1完整精度2~17個字節(jié)numeric-1038+1~1038-1完整精度2~17個字節(jié)l字符型和文本型字符型:字符數(shù)據(jù)類型用于存儲由字母、符號和數(shù)字組成的字符串。字符串常量要用單引號為起止界限,例如’9aC’。數(shù)據(jù)類型定義格式長度說明charchar(n),n表示字符串的長度,1=<n<=8000定長,最大8KBvarcharvarchar(n),n表示字符串可達(dá)到的最大長度1=<n<=8000變長,最大8KBtexttext變長,大于8KBchar(n)是定長字符類型,字符串長度超出n的部分被截??;如不足n時,則在串的尾部添加空格以達(dá)到長度n。varchar(n)是變長字符數(shù)據(jù)類型,長度為字符串的實(shí)際字符個數(shù)。如varchar(50),當(dāng)輸入“Zhonghua”字符串時,其存儲長度為8個字節(jié)。通常,當(dāng)某一字段的字符串長度固定或接近一固定值時使用char類型;當(dāng)字符串長度明顯不一致時使用varchar類型。Text是文本數(shù)據(jù)類型,用來存儲可變長度的大量字符數(shù)據(jù),其存儲長度最多可達(dá)20億個ASCII字符。l日期時間數(shù)據(jù)類型用來存儲日期和時間數(shù)據(jù),默認(rèn)數(shù)據(jù)格式為:”YYYY-MM-DDHH:MM:SS”,例如:“2008-12-0812:35:29”,在使用時也可只存儲日期或時間。l位類型bit是位數(shù)據(jù)類型,用來作為邏輯變量使用,其數(shù)值有兩種取值:0和1,分別代表TRUE和FALSE或YES和NO。例如在T_Student表中,字段LiveInDorm存儲“是否住?!毙畔⑹褂胋it。數(shù)據(jù)類型數(shù)據(jù)范圍占用存儲空間datetime1753年1月1日~9999年12月31日之間的日期時間8個字節(jié)smalldatetime1900年1月1日~2079年6月6日之間的日期時間4個字節(jié)l圖像數(shù)據(jù)類型image用于存儲照片、圖片等,實(shí)際存儲的是可變長度的二進(jìn)制數(shù)據(jù),其長度最大可達(dá)231-1個字節(jié)。
l貨幣型用十進(jìn)制數(shù)表示貨幣值。實(shí)際上是一種小數(shù),但小數(shù)點(diǎn)后只有4位,且自動四舍五入。
luniqueidentifie:唯一標(biāo)識符類型
數(shù)據(jù)庫管理系統(tǒng)會隨著記錄的加入自動為該類型的字段產(chǎn)生唯一標(biāo)識符。它是16字節(jié)長的二進(jìn)制數(shù)據(jù)。
數(shù)據(jù)類型數(shù)據(jù)范圍占用存儲空間money-922,337,203,685,477.5808~+922,337,203,685,477.5807精度為4位小數(shù)8個字節(jié)smallmoney-214,748.3648~214,748.3647,精度為4位小數(shù)4個字節(jié)2.?dāng)?shù)據(jù)表的創(chuàng)建和維護(hù)
(1)創(chuàng)建數(shù)據(jù)表【例4-3】在數(shù)據(jù)庫School中建立學(xué)生表T_Student,完成各字段的定義。
1)在企業(yè)管理器中展開School數(shù)據(jù)庫。右擊數(shù)據(jù)庫文件夾下的“表”項(xiàng),從彈出的快捷菜單中選擇“新建表”命令,彈出“表設(shè)計(jì)”界面。2)在表設(shè)計(jì)界面,根據(jù)表的設(shè)計(jì)結(jié)構(gòu)依次完成每個字段的名稱和數(shù)據(jù)類型設(shè)置。
3)在輸入完各表字段后,單擊按鈕或關(guān)閉表設(shè)計(jì)窗口,出現(xiàn)“選擇表名”對話框,輸入表名“T_Student”,單擊【確定】,T_Student表就建立起來了。圖4-15表設(shè)計(jì)界面屬性設(shè)置區(qū),如字段描述、默認(rèn)值、小數(shù)精度及位數(shù)等。設(shè)計(jì)表中字段(2)修改數(shù)據(jù)表結(jié)構(gòu)增加字段、刪除字段、修改字段屬性等。
操作步驟:1)在企業(yè)管理器中選擇“表”對象,在右邊窗格右擊需要修改的表,在彈出的菜單上選擇“設(shè)計(jì)表”命令,出現(xiàn)“表設(shè)計(jì)”界面。2)在數(shù)據(jù)表設(shè)計(jì)界面上,選中需要修改的一行,然后右擊鼠標(biāo),彈出快捷菜單,可以對表設(shè)置主鍵、插入字段、刪除字段。3)對表的結(jié)構(gòu)修改完畢后,單擊關(guān)閉窗口按鈕,出現(xiàn)保存表結(jié)構(gòu)修改對話框,單擊“是”即可保存修改后的表。
(3)更改表名
操作步驟:1)在企業(yè)管理器中展開表,右擊要更改表名的表,在快捷菜單上選擇“重命名”命令。2)在表名位置輸入新的表名
。
3.?dāng)?shù)據(jù)表的記錄插入和維護(hù)
操作步驟:在企業(yè)管理器中,展開需操作的表所在的數(shù)據(jù)庫,在右窗格中右擊需操作的數(shù)據(jù)表,在彈出的菜單中選擇“打開表/返回所有行”,出現(xiàn)所選擇表的數(shù)據(jù)窗口。在該數(shù)據(jù)窗口中,可插入記錄、修改記錄和刪除記錄。插入記錄1)將光標(biāo)定位在表尾的下一行,逐字段輸入值,每輸入一個字段值,按回車鍵。2)當(dāng)一個記錄最后一個字段輸入完畢按回車鍵后,光標(biāo)將自動轉(zhuǎn)到下一行的第一個字段處,便可插入下一個記錄。3)輸完數(shù)據(jù),單擊“表數(shù)據(jù)”窗口的【關(guān)閉】按鈕,添加的記錄就保存到數(shù)據(jù)表中。
(2)修改記錄定位被修改的記錄字段,然后對該字段值進(jìn)行編輯修改。(3)刪除記錄1)在表數(shù)據(jù)窗口中定位需被刪除的記錄行,單擊鼠標(biāo)右鍵,在彈出的快捷菜單上選擇“刪除”命令。2)彈出確認(rèn)對話框,單擊【是】按鈕即刪除選擇的記錄。
4.刪除數(shù)據(jù)表
(1)在企業(yè)管理器中展開表,右單擊要刪除的表,在快捷菜單上選擇“刪除”命令。(2)在彈出的“除去對象”對話框中,選擇【除去】按鈕,即可刪除選擇的表。
4.2.4數(shù)據(jù)表約束和數(shù)據(jù)完整性控制數(shù)據(jù)的完整性控制指保護(hù)數(shù)據(jù)庫中的數(shù)據(jù)的正確性、有效性和相容性,防止數(shù)據(jù)庫中存在不符合語義的數(shù)據(jù),防止錯誤信息進(jìn)入數(shù)據(jù)庫,并且使數(shù)據(jù)符合所描述的業(yè)務(wù)規(guī)則。SQLServer使用表約束實(shí)現(xiàn)數(shù)據(jù)庫完整性控制的方法:通過限制表的字段、記錄以及表之間的數(shù)據(jù)來保證數(shù)據(jù)完整性。
表4-10SQLServer數(shù)據(jù)常用完整性約束機(jī)制完整性約束作用實(shí)體完整性主關(guān)鍵字約束(PrimaryKey)保證表中記錄行的唯一性唯一性約束(Unique)保證在非關(guān)鍵字字段不出現(xiàn)重復(fù)值域完整性默認(rèn)值約束(Default)對沒有插入值的列自動添加表定義時對該列設(shè)置的默認(rèn)值非空值約束(NotNull)限定某一列必須有值,即不允許空值檢查約束(Check)限定某一列中可接受的值或數(shù)據(jù)格式參照完整性外關(guān)鍵字(ForeignKey)通過表間關(guān)系約束字段值的有效性【例4-4】在數(shù)據(jù)庫School中定義學(xué)生表T_Student的主鍵為“StudentCode”?!纠?-5】在數(shù)據(jù)庫School中的學(xué)生表T_Student不允許出現(xiàn)姓名相同的記錄,即對“StudentName”字段定義唯一性約束。實(shí)體完整性
主關(guān)鍵字約束(PrimaryKey)唯一性約束(Unique)
主關(guān)鍵字(簡稱主鍵)是表中能保證表中記錄唯一性的一個或多個字段的組合。主鍵的值不能重復(fù),且不能為空。一個表只能有一個主鍵。
唯一性約束可保證非主鍵列不輸入重復(fù)值。對非主鍵字段或字段的組合強(qiáng)制唯一性。對允許空值的字段強(qiáng)制唯一性。
實(shí)體完整性主要體現(xiàn)在表中記錄的唯一性。域完整性默認(rèn)值約束(Default)
非空值約束(NotNull)
檢查約束(Check)
默認(rèn)值約束使用戶能夠定義一個值,每當(dāng)用戶沒有在某一列中輸入值時,則系統(tǒng)將所定義的值提供給這一列。
記錄中的每一列均必須有值,即使它是空(NULL)。
CHECK約束限制某一列中可接受的值或格式。
域完整性主要體現(xiàn)在表中字段(或稱列或域)的值的有效性。【例4-6】在數(shù)據(jù)庫School的學(xué)生表T_Student中,設(shè)置性別Sex字段的默認(rèn)值為“男”。
【例4-7】在數(shù)據(jù)庫School的學(xué)生表T_Student中,設(shè)置StudentCode、StudentName、ClassCode、Sex字段為非空值,其他字段允許為空。
【例4-8】在數(shù)據(jù)庫School的學(xué)生表T_Student中,設(shè)置Sex列的值只允許是“男”或“女”。
參照完整性:外關(guān)鍵字(ForeignKey)
參照完整性主要體現(xiàn)在通過表間關(guān)系約束字段(或稱列或域)的值的有效性。
兩個建立關(guān)聯(lián)關(guān)系的表中,在主表中相關(guān)字段定義了主鍵或唯一性約束,在從表中將相關(guān)字段定義為外關(guān)鍵字(簡稱外鍵),這樣,外鍵的取值必須是主鍵中存在的值或空值?!纠?-9】在數(shù)據(jù)庫School的學(xué)生表T_Student和T_Class表間建立關(guān)系,實(shí)施參照完整性約束。在該關(guān)系中,將T_Class的ClassCode字段設(shè)置為主鍵,將T_Student的ClassCode設(shè)置為外鍵,并實(shí)施參照完整性。
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年帶電作業(yè)技術(shù)會議:配網(wǎng)低壓不停電作業(yè)的“機(jī)智”升級
- 2025年電解鋁行業(yè)運(yùn)行研究報(bào)告
- 2025年MODULE-COG檢測系統(tǒng)項(xiàng)目合作計(jì)劃書
- 術(shù)后并發(fā)癥管理護(hù)理查房
- 低血糖的飲食建議
- 2025年血橙提取物化妝品項(xiàng)目發(fā)展計(jì)劃
- 護(hù)理隨訪流程與規(guī)范
- 咯血介入治療患者的營養(yǎng)支持護(hù)理
- 護(hù)理中的護(hù)理風(fēng)險(xiǎn)管理與不良事件處理
- 母嬰護(hù)理基礎(chǔ)知識和技巧大全
- 教學(xué)查房課件-強(qiáng)直性脊柱炎
- 傳染病報(bào)告卡
- 句法成分課件(共18張)統(tǒng)編版語文八年級上冊
- 2023版中國近現(xiàn)代史綱要課件:07第七專題 星星之火可以燎原
- 通知書產(chǎn)品升級通知怎么寫
- 氣管插管術(shù) 氣管插管術(shù)
- 大學(xué)《實(shí)驗(yàn)診斷學(xué)》實(shí)驗(yàn)八:病例分析培訓(xùn)課件
- GB/T 28400-2012釹鎂合金
- 多維閱讀第8級Moon Mouse 明星老鼠的秘密
- 骨髓增生異常綜合癥課件整理
- 心肌梗死院前急救課件
評論
0/150
提交評論