第7章SQLServer2005關系數據庫管理系統_第1頁
第7章SQLServer2005關系數據庫管理系統_第2頁
第7章SQLServer2005關系數據庫管理系統_第3頁
第7章SQLServer2005關系數據庫管理系統_第4頁
第7章SQLServer2005關系數據庫管理系統_第5頁
已閱讀5頁,還剩63頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

第7章

SQLServer2005關系數據庫管理系統本章要點:SQLServer2005簡介SQLServer2005的安裝SQLServerManagementStudioSQLServer2005數據庫表的操作數據庫的導入/導出7.1SQLServer2005簡介SQLServer是一個關系數據庫管理系統。最初由Microsoft、Sybase和Ashton-Tate三家公司共同開發(fā)的,于1988年推出了第一個OS/2版本。在WindowsNT推出后,Microsoft與Sybase在SQLServer的開發(fā)上分道揚鑣,Microsoft將SQLServer移植到WindowsNT系統上,專注于開發(fā)推廣SQLServer的WindowsNT版本。Sybase則較專注于SQLServer在UNIX操作系統上的應用。通常把MicrosoftSQLServer簡稱為SQLServer。SQLServer2005是在SQLServe2000的基礎上開發(fā)出來的。SQLServer2005擴展了SQLServer2000的性能,如可靠性、可用性、可編程性和易用性。提供了一個集成的開發(fā)環(huán)境,并包含了應用程序的優(yōu)秀數據庫平臺。SQLServer特性技術性能高可用性SQLServer2005的失敗轉移集群和數據庫鏡像技術確保企業(yè)向員工、客戶和合作伙伴提交高度可靠和可用的應用系統。管理工具SQLServer2005引進了一套集成的管理工具和管理應用編程接口(APIs),以提供易用性、可管理性、及對大型SQLServer配置的支持。安全性增強SQLServer2005旨在通過數據庫加密、更加安全的默認設置、加強的密碼政策和細化許可控制、及加強的安全模型等特性,為企業(yè)數據提供最高級別的安全性??缮炜s性SQLServer2005可伸縮性的先進性包括表格分區(qū)、復制能力的增強和64位支持。企業(yè)數據管理SQLServer特性技術性能CommonLanguageRuntime(CLR)集成SQLServer2005引入了使用Microsoft.NET語言來開發(fā)數據庫目標的性能。深入的XML集成SQLServer2005提供一種新的XML數據類型,使在SQLServer數據庫中存儲XML片段或文件成為可能。Transact-SQL增強新的查詢類型和在交易過程中使用錯誤處理的功能,為開發(fā)人員在SQLServer查詢開發(fā)方面提供了更高的靈活性和控制力。SQL服務代理SQL服務代理為各個級別的可伸縮性提供一種創(chuàng)新的、分發(fā)的、異步的應用系統體系結構。開發(fā)人員生產力SQLServer特性技術性能分析服務分析服務對數據倉庫、商務智能和line-of-business解決方案的可伸縮性、可管理性、可靠性、可用性和可規(guī)劃性提供擴展。數據轉換服務(DTS)對DTS結構合工具的全部重新設計為開發(fā)人員和數據庫管理員提供了增強的靈活性和可管理性。報表服務報表服務是一種新的報表服務器和工具箱,用于創(chuàng)建、管理和配置企業(yè)報告。數據挖掘數據挖掘的功能得以增強,主要歸功于四種新的運算法則、改進的數據模型和處理工具。商務智能SQLServer2005各個版本SQLServer2005EnterpriseEdition(32位和64位)

EnterpriseEdition達到了支持超大型企業(yè)進行聯機事務處理(OLTP)、高度復雜的數據分析、數據倉庫系統和網站所需的性能水平。EnterpriseEdition的全面商業(yè)智能和分析能力及其高可用性功能(如故障轉移群集),使它可以處理大多數關鍵業(yè)務的企業(yè)工作負荷。EnterpriseEdition是最全面的SQLServer版本,是超大型企業(yè)的理想選擇,能夠滿足最復雜的要求。SQLServer2005StandardEdition(32位和64位)

StandardEdition是適合中小型企業(yè)的數據管理和分析平臺。它包括電子商務、數據倉庫和業(yè)務流解決方案所需的基本功能。StandardEdition的集成商業(yè)智能和高可用性功能可以為企業(yè)提供支持其運營所需的基本功能。SQLServer2005WorkgroupEdition(僅適用于32位)對于那些需要在大小和用戶數量上沒有限制的數據庫的小型企業(yè),WorkgroupEdition是理想的數據管理解決方案。WorkgroupEdition可以用作前端Web服務器,也可以用于部門或分支機構的運營。它包括SQLServer產品系列的核心數據庫功能,并且可以輕松地升級至StandardEdition或EnterpriseEdition。WorkgroupEdition是理想的入門級數據庫,具有可靠、功能強大且易于管理的特點。SQLServer2005DeveloperEdition(32位和64位)

DeveloperEdition使開發(fā)人員可以在SQLServer上生成任何類型的應用程序。它包括SQLServer2005EnterpriseEdition的所有功能,但有許可限制,只能用于開發(fā)和測試系統,而不能用作生產服務器。DeveloperEdition是獨立軟件供應商(ISV)、咨詢人員、系統集成商、解決方案供應商以及創(chuàng)建和測試應用程序的企業(yè)開發(fā)人員的理想選擇。DeveloperEdition可以根據生產需要升級至SQLServer2005EnterpriseEdition。SQLServer2005ExpressEdition(僅適用于32位)

SQLServerExpress是一個免費、易用且便于管理的數據庫。SQLServerExpress與MicrosoftVisualStudio2005集成在一起,可以輕松開發(fā)功能豐富、存儲安全、可快速部署的數據驅動應用程序。SQLServerExpress是免費的,可以再分發(fā)(受制于協議),還可以起到客戶端數據庫以及基本服務器數據庫的作用。SQLServerExpress是低端ISV、低端服務器用戶、創(chuàng)建Web應用程序的非專業(yè)開發(fā)人員以及創(chuàng)建客戶端應用程序的編程愛好者的理想選擇。7.2SQLServer2005的安裝7.2.1SQLServer2005的安裝

1、安裝SQLServer2005標準版之前應注意的問題在安裝SQLServer2005標準版之前,首先需滿足系統對硬件和操作系統的要求,然后啟動Internet信息服務(IIS)。此外,還需安裝MicrosoftVisualStudio2005,因為安裝

MicrosoftVisualStudio2005之后,系統將安裝Microsoft.NETFrameworkSDKv2.0,SQLServer2005標準版需要它的支持。但不要安裝MicrosoftVisualStudio2005自帶的SQLServer2005,因為其是精簡版,會影響標準版的安裝。

2、安裝SQLServer2005標準版步驟

SQLServer2005標準版有兩張安裝盤,disk1為系統安裝盤,disk2為工具安裝盤。1)安裝啟動界面2)安裝必備組件3)進入MicrosoftSQLServer安裝向導4)系統配置檢查5)MicrosoftSQLServer準備安裝6)個性化設置7)選取安裝的組件8)確定實例名9)定義使用賬戶10)身份驗證模式11)排序規(guī)則設置12)錯誤和使用情況設置13)開始安裝14)安裝進度15)完成安裝7.2.2

SQLServerManagementStudioSQLServer2005使用的圖形界面管理工具是:SQLServerManagementStudio(SSMS,SQLServer管理控制臺)。這是一個集成的統一的管理工具組,用于訪問、配置和管理所有SQLServer組件。SQLServerManagementStudio將以前的SQLServer2000中包括的企業(yè)管理器、查詢分析器和服務管理器的各種功能組合到一個單一環(huán)境,使用戶通過易用的圖形工具和豐富的腳本完成任務。打開方法:「開始」菜單\程序\MicrosoftSQLServer2005\SQLServerManagementStudio,在出現的“連接到服務器”對話框中,單擊“連接”按鈕,就啟動“SQLServerManagementStudio”,并以計算機系統管理員身份連接到SQLServer服務器。已注冊的服務器:用于顯示注冊服務器數據庫引擎的名稱信息,用戶可通過該組件設置數據庫引擎,包括啟動、停止、屬性等設置。對象資源管理器:用來對服務器進行圖形化管理,用戶可以直接通過該窗口來操作數據,例如查看諸如表、視圖、存儲過程等數據庫對象,創(chuàng)建、刪除、修改數據庫及表等對象,還可以進行數據庫備份與恢復、數據庫安全性管理等任務。查詢編輯器:用戶可以在分析器窗口中輸入相應的T-SQL語言(Transact-SQL,是SQLServer中SQL的實現)命令,單擊“執(zhí)行”按鈕,系統執(zhí)行命令后將執(zhí)行的結果自動返回Studio的結果窗口中顯示。模板資源管理器:用來快速構造代碼,降低編寫T-SQL腳本的難度,例如該管理器包括備份和恢復數據庫等管理任務。7.3SQLServer2005數據庫SQLServer的數據庫是有組織的數據的集合,這種數據集合具有邏輯結構并得到數據庫系統的管理和維護。數據庫由包含數據的基本表和對象(如視圖、索引、存儲過程和觸發(fā)器等)組成。數據庫中最重要的對象是表,表中存儲了數據庫的數據。對數據庫和表的操作是開發(fā)人員的一項重要工作。7.3.1數據庫基本概念SQLServer2005將數據存儲在文件中,對于這些文件賦予一定的存儲空間。用戶可以在創(chuàng)建數據庫的時候或者在創(chuàng)建之后對這些文件進行管理操作。物理數據庫2005中將數據庫映射到一組操作系統文件上,這種觀點將數據庫在SQLServer稱為物理數據庫。數據庫文件存儲的基本單位是頁,在SQLServer2005中,頁的大小是8KB。SQLServer2005的物理數據庫架構主要內容包括文件及文件組,數據頁和盤區(qū)等。它們描述了如何為數據庫分配空間。了解如何存儲數據有助于規(guī)劃和分配給數據庫的磁盤容量。在理解SQLServer2005數據庫物理結構時,需注意區(qū)分數據頁和擴展盤區(qū)。數據也包含數據記錄中除text、ntext和image數據外的所有數據,text、ntext和image數據存儲在單獨的頁中。擴展盤區(qū)又稱盤區(qū),是為表和索引分配存儲空間額基本單位,一個盤區(qū)的大小為8個相鄰的頁,即64KB邏輯數據庫

SQLServer2005數據庫是存儲數據的容器,即是一個存放數據的表和支持這些數據的存儲、檢索、安全性和完整性的邏輯成分所組成的集合。這種觀點將數據庫稱為邏輯數據庫,組成數據庫的邏輯成分稱為數據庫對象。

SQLServer2005的數據庫對象主要包括表、視圖、索引、存儲過程、觸發(fā)器和約束。7.3.2數據庫文件SQLServer2005數據庫包括三種類型的文件:(1)主數據文件。簡稱主文件,是數據庫的關鍵文件,包含了數據庫的啟動信息,并且存儲部分或全部數據。每個數據庫有且僅有一個主文件,其默認擴展名為.mdf。(2)輔助數據文件。稱輔文件,用于存儲未包括在主文件內的其他數據文件。默認擴展名為.ndf。該文件是可選的,可創(chuàng)建多個或不使用輔助文件。(3)日志文件。用于保存恢復數據庫所需的事務日志信息。每個數據庫至少有一個日志文件,也可以有多個。其擴展名為.ldf。采用多個或多種數據庫文件存儲數據的優(yōu)點體現為:1)數據庫文件可以不斷擴充,而不受操作系統文件大小的限制;2)可將數據庫文件存儲在不同的硬盤中,這樣可以同時對幾個硬盤做數據存取,提高了數據處理的效率,此點對于服務器型的計算機尤其重要。在SQLServer2005中,不強制使用.mdf、.ndf、.ldf文件擴展名,但建議在創(chuàng)建數據庫文件時使用這些擴展名,以便標識文件的用途。7.3.3文件組為了便于管理和分配數據而將文件組織在一起,通??梢詾橐粋€磁盤驅動器創(chuàng)建一個文件組,將多個數據庫文件集合起來形成一個整體。通過文件組,可以將特定的的表、索引等與該文件組相關聯,對它們的操作都在該文件組中進行。使用文件組可以提高表中數據的查詢性能。每個文件組有一個組名,文件組可分為主文件組(PrimaryFileGroup)和次文件組(SecondaryFileGroup)。一個文件只能存在于一個文件組中,一個文件組也只能被一個數據庫使用。7.3.4系統數據庫與用戶數據庫系統數據庫存儲有關SQLServer的系統信息,是其管理數據庫的依據。若系統數據庫遭到破壞,SQLServer將不能正常啟動。系統數據庫在安裝SQLServer2005時創(chuàng)建:master、model、msdb、tempdb。master中包含諸如登錄帳戶、系統配置、數據庫位置及數據庫錯誤等信息,用于控制用戶數據庫和SQLServer的運行;model為新創(chuàng)建的數據庫提供模板;msdb為“SQLServerAgent”調度信息和作業(yè)記錄存儲空間;tempdb為臨時表和臨時存儲過程提供存儲空間。每個系統數據庫都包含主數據文件和主日志文件,擴展名為mdf和ldf。例如master數據庫的兩個文件分別為master.mdf和master.ldf。用戶數據庫是用戶創(chuàng)建的數據庫。它在結構上和系統數據庫相同,文件的擴展名也相同。7.3.5創(chuàng)建數據庫能夠創(chuàng)建數據庫的用戶必須是系統管理員,或是被授權使用“CREATEDATABASE”語句的用戶。創(chuàng)建數據庫必須要確定數據庫名、所有者(創(chuàng)建數據庫的用戶)、數據庫大?。ㄗ畛醯拇笮?、最大的大小、是否允許增長及增長方式)和存儲數據庫的文件。在SQLServer2005中,用戶可以自己創(chuàng)建數據庫即用戶數據庫,并且可以對數據庫進行修改、刪除等操作。創(chuàng)建數據庫可以用兩種方法:一種是在SQLServerManagementStudio中使用向導創(chuàng)建數據庫另一種方式為通過查詢窗口中執(zhí)行CREATEDATABASE命令創(chuàng)建數據庫在SQLServerManagementStudio下創(chuàng)建數據庫

在“MicrosoftSQLServerManagementStudio”中創(chuàng)建數據庫的過程如下:(1)啟動“MicrosoftSQLServerManagementStudio”,在對象資源管理器窗口的“數據庫”節(jié)點上右擊,選擇快捷菜單中的“新建數據庫”命令。如圖所示:

(2)彈出“新建數據庫”對話框,在“常規(guī)”數據頁的“數據庫名稱”文本框中,輸入要創(chuàng)建的數據庫的名稱。其中:在“常規(guī)”數據頁中數據文件“初始大小”處可以設置文件的初始大?。∕B);單擊自動增長方式后的按鈕可設置自動增長方式和最大文件大??;單擊路徑后的按鈕可設置文件的存放路徑;在“選項”數據頁中,設置數據庫的屬性選項。在“文件組”數據頁中,增加或刪除文件組。

在對象資源管理器窗口中展開“數據庫”,可以看到新建的數據庫,如圖所示。7.4表的操作在數據庫中,表是由數據按一定的順序和格式構成的數據集合,是數據庫的主要對象。每一行代表一條記錄,每一列代表記錄的一個字段。沒有記錄的表稱為空表。在SQLServer2005中,每個數據庫最多可包含20億個表,每個表可包含1,024個字段。每個表通常都有一個主關鍵字(又稱為主碼),用于唯一地確定一條記錄。在同一個表中不允許有相同名稱的字段。7.4.1創(chuàng)建表

創(chuàng)建好數據庫后,數據庫是空的,就像建造了一個空的房子,放入數據后,才成為真正的數據庫。數據庫中用于存儲數據的是表,所以需要在其中創(chuàng)建表。例題:使用SQLServerManagementStudio創(chuàng)建表。在數據庫“STUDENT1”中創(chuàng)建“學生表(S)”,學生表的表結構定義如表所示。字段名字段數據類型長度是否為空說明學生號char7否主鍵姓名char8否性別char2否出生日期datetime8是入學時間datetime8是系部代號char2是專業(yè)char10是年級char9否

①打開SQLServerManagementStudio,在對象資源管理器中,右鍵單擊數據庫的“表”節(jié)點,選擇“新建表”命令。如圖所示。

②出現表設計器,在其上半部分輸入列的基本屬性。在表設計器下半部分的列屬性,指定列的詳細屬性。如圖所示。

設置主鍵③定義好表中的所有列后,單擊保存按鈕或“文件”菜單中的“保存表名”命令。如圖所示。④在彈出的“選擇名稱”對話框中,為該表鍵入一個名稱,單擊“確定”按鈕。7.4.2修改表

當數據表的結構創(chuàng)建完成后,用戶還可以根據實際需要隨時更改表結構。用戶可以增加、刪除和修改字段,更改數據表名稱等。在SQLServerManagementStudio中修改表(1)在SQLServerManagementStudio的“對象資源管理器”窗口中,單擊“數據庫”節(jié)點前的“+”號,展開“數據庫”節(jié)點;單擊目標數據庫前的“+”號,展開目標數據庫。(2)單擊“表”節(jié)點前的“+”號,展開“表”節(jié)點。在目標表上單擊鼠標右鍵,彈出快捷菜單,選擇“修改”命令。(3)用表設計器向表中添加列、修改列的數據類型、列的數據長度、列的精度、列的小數位數、列的為空性。與創(chuàng)建表時相同。7.4.3列約束和表約束

約束是通過限制列中數據、行中數據和表之間數據來保證數據完整性的非常有效的方法。約束可以確保把有效的數據輸入到列中和維護表和表之間的特定關系。其中列約束是針對表中一個列的約束,表約束是針對表中一個或多個列的約束。

MicrosoftSQLServer2005系統提供了5種約束類型:PRIMARYKEY(主鍵)約束FOREIGNKEY(外鍵)約束UNIQUE約束CHECK約束DEFAULT約束

1、創(chuàng)建和刪除PRIMARYKEY(主鍵)約束主鍵約束在表中定義一個主鍵值,這是唯一確定表中每一行數據的標識符。在所有的約束類型中,主鍵約束是最重要的一種約束類型,也是使用最廣泛的約束類型。該約束強制實體完整性。一個表中最多只能有一個主鍵,且主鍵列不允許空值。主鍵經常定義在一個列上,但是也可以定義在多個列的組合上。當主鍵定義在多個列上時,雖然某一個列中的數據可能重復,但是這些列的組合值不能重復。2、創(chuàng)建和刪除UNIQUE約束

UNIQUE約束指定表中某一個列或多個列不能有相同的兩行或兩行以上的數據存在。這種約束通過實現唯一性索引來強制實體完整性。當表中已經有了一個主鍵約束時,如果需要在其他列上實現實體完整性,又因為表中不能有兩個或兩個以上的主鍵約束,所以只能通過創(chuàng)建UNIQUE約束來實現。一般地,把UNIQUE約束稱為候選的主鍵約束。

3、創(chuàng)建和刪除FOREIGNKEY約束外鍵約束定義一個或多個列,這些列可以引用同一個表或另外一個表中的主鍵約束列或UNIQUE約束列。實際上,通過創(chuàng)建外鍵約束可以實現表和表之間的依賴關系。一般情況下,在MicrosoftSQLServer關系型數據庫管理系統中,表和表之間經常存在著大量的關系,這些關系都是通過定義主鍵約束和外鍵約束實現的。①在“對象資源管理器”窗口中,展開數據庫,選擇“數據庫關系圖”,右擊鼠標,如圖所示。②在彈出的快捷菜單中選擇“新建數據庫關系圖”,出現“添加表”窗口,如圖所示。③選擇要建立關聯的表,單擊“添加”按鈕,關閉“添加表”窗口,出現表的關聯關系,如圖所示。④關聯圖建好后再關閉時會彈出一窗口。⑤若要保存更改,單擊“是”按鈕,出現“選擇名稱”窗口,輸入名稱,單擊“確定”按鈕。4、創(chuàng)建和刪除CHECK約束

CHECK約束用來限制用戶輸入某一個列的數據,即在該列中只能輸入指定范圍的數據。CHECK約束的作用非常類似于外鍵約束,兩者都是限制某個列的取值范圍,但是外鍵是通過其他表來限制列的取值范圍,CHECK約束是通過指定的邏輯表達式來限制列的取值范圍。一個列上可以定義多個CHECK約束;當執(zhí)行INSERT語句或者UPDATE語句時,該約束驗證相應的數據是否滿足CHECK約束的條件。但是,執(zhí)行DELETE語句時不檢查CHECK約束。

5、創(chuàng)建和刪除DEFAULT約束

當使用INSERT語句插入數據時,如果沒有為某一個列指定數據,那么DEFAULT約束就在該列中輸入一個值。

例如,在學生表的性別列中定義了一個DEFAULT約束為“男”。當向該表中輸入數據時,如果沒有為性別列提供數據,那么DEFAULT約束把缺省值“男”自動插入到該列中。因此,DEFAULT約束可以實現保證域完整性。7.4.4表數據操作

表的基本結構建好后,表內沒有數據,我們可以在SQLServer管理控制臺中非常方便地對數據執(zhí)行各種操作,也可以利用Transact-SQL中的命令完成相應的功能。1、輸入數據利用SQLServer管理控制臺輸入數據:①在“對象資源管理器”窗口中,展開數據庫和表,右鍵單擊表名,彈出快捷菜單,選擇“打開表”如圖所示。②出現一個空表,如左圖所示。輸入數據,如右圖所示。

2、修改表中的數據

使用SQLServerManagementStudio修改數據

在SQLServerManagementStudio中,選擇相應的表,鼠標右擊后,在彈出的快捷菜單中選擇“打開表”命令,出現表數據窗口,在該窗口中,可以直接對數據進行修改操作。

3、刪除數據

使用SQLServerManagementStudio刪除數據

在SQLServerManagementStudio中,選擇相應的表,鼠標右擊后,在彈出的快捷菜單中選擇“打開表”命令,出現表數據窗口,在該窗口中選擇要刪除的記錄,右擊后,在彈出的快捷菜單中選擇“刪除”命令。7.4.5刪除表

刪除表就是將表中數據和表的結構從數據庫中永久性地去除。表被刪除之后,就不能再恢復該表的定義。使用SQLServerManagementStudio刪除表:打開

SQLServerManagementStudio,展開“數據庫”,再展開“表”,右擊要刪除的表,在彈出的快捷菜單中選擇“刪除”命令,在隨后出現的“刪除對象”對話框中單擊“確定”按鈕,即可完成指定表的刪除操作。7.5數據庫的導入/導出

通過導入和導出數據的操作可以在SQLServer2005和其他異類數據源(例如Excel

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論