




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、數(shù)據(jù)庫原理第三章:關(guān)系數(shù)據(jù)庫標準語言SQL,本章學習內(nèi)容,SQL概述、數(shù)據(jù)庫的體系結(jié)構(gòu) 創(chuàng)建及管理數(shù)據(jù)庫 管理數(shù)據(jù)表 管理表數(shù)據(jù) 數(shù)據(jù)庫單表查詢 數(shù)據(jù)庫綜合查詢 視圖的創(chuàng)建及刪除,本次課主講內(nèi)容,SQL基礎(chǔ)知識 SQL Server 2000基礎(chǔ)知識 SQL Server 2000體系結(jié)構(gòu) 創(chuàng)建及管理數(shù)據(jù)庫,一、SQL基礎(chǔ)知識,SQL(Structured Query Language),即結(jié)構(gòu)化查詢語言,是關(guān)系數(shù)據(jù)庫的標準語言,是一個通用的、功能極強的關(guān)系數(shù)據(jù)庫語言;其功能并不僅僅是查詢;主要用來對存放在計算機中的數(shù)據(jù)庫進行組織、管理和檢索。 標準的SQL語句幾乎可以在所有的關(guān)系型數(shù)據(jù)庫上不
2、加修改地使用。Access、Visual Foxpro、Oracle這樣的數(shù)據(jù)庫同樣支持標準的SQL。,當前,幾乎所有關(guān)系數(shù)據(jù)庫管理軟件都支持SQL,許多軟件廠商對SQL基本命令集還進行了不同程度的擴充和修改; 如Transact-SQL是SQL Server 在SQL的基礎(chǔ)上添加了變量、運算符、函數(shù)及流程控制語句及注解。那么別的關(guān)系型數(shù)據(jù)庫就不支持T-SQL語言,語言是SQL Server系列產(chǎn)品獨有的。,1、SQL概述(P78),1974年被Boyce和Chamberlin提出,并在IBM公司研制的關(guān)系數(shù)據(jù)庫管理系統(tǒng)System R上實現(xiàn)。由于SQL簡單易學,功能豐富,因此被數(shù)據(jù)庫廠商所采
3、用。 1986年,美國國家標準局ANSI的數(shù)據(jù)庫委員會批準了SQL作為關(guān)系數(shù)據(jù)庫語言的美國標準,同年公布了SQL的標準文本。 1987年,國際標準化組織ISO也通過了這一標準。,2、SQL語言特點,一、語言功能和模式結(jié)構(gòu)的一體化 在關(guān)系模型中實體和實體間的聯(lián)系均用關(guān)系表示,關(guān)系數(shù)據(jù)結(jié)構(gòu)的單一性帶來了數(shù)據(jù)操作符的統(tǒng)一,查找、插入、刪除、修改等每一種操作都只需一種操作符,克服了信息表示方式的多樣性帶來的操作復雜性。,二、高度非過程化的語言 用SQL語言進行數(shù)據(jù)操作,只要提出“做什么”,而無須指明“怎么做”,因此無需了解存取路徑,存取路徑的選擇以及SQL語句的操作過程由系統(tǒng)自動完成。這不但減輕了用戶
4、負擔,而且有利于提高數(shù)據(jù)獨立性。,三、面向集合的操作方式 SQL語言采用集合操作方式,不僅操作對象、查找結(jié)果可以是元組的集合,而且一次插入、刪除、更新操作的對象也可以是元組的集合。,四、兩種使用方式、統(tǒng)一的語法結(jié)構(gòu) SQL語言既是自含式語言,又是嵌入式語言。 作為自含式語言,它能夠獨立地用于聯(lián)機交互的使用方式,用戶可以在終端鍵盤上直接鍵入SQL命令對數(shù)據(jù)庫進行操作; 作為嵌入式語言,SQL語句能夠嵌入到高級語言(例如VB、PB、VC)程序中,供程序員設(shè)計程序時使用。 在兩種不同的使用方式下,SQL語言的語法結(jié)構(gòu)基本上是一致的。,五、語言簡捷,易學易用 SQL語言接近英語口語,因此容易學習,容易
5、使用。 表 31 SQL語言的動詞,3、 SQL Server的管理工具,現(xiàn)在就介紹一下這些工具的功能:,1. 企業(yè)管理器,企業(yè)管理器(Enterprise Manager)是SQL Server中最重要的一個管理工具。用戶和系統(tǒng)管理員可以使用它來管理網(wǎng)絡(luò)、計算機、服務(wù)和其它系統(tǒng)組件,安裝好系統(tǒng)之后,我們可從“開始”-“程序” - “Microsoft SQL Server”中看到如圖10.8所示的畫面。,查詢分析器,SQL Server 2000的查詢分析器(Query Analyzer)可以使用戶交互式地輸入和執(zhí)行各種Transact-SQL語句,并且迅速地查看這些語句的執(zhí)行結(jié)果,來完成對
6、數(shù)據(jù)庫中的數(shù)據(jù)的分析和處理,是SQL Server 2000提供用來分析查詢計劃(The Plan of A Query)、同時執(zhí)行多個查詢和查看數(shù)據(jù)及索引的工具,單擊選項會出現(xiàn)“連接到SQL Server”對話框,請輸入要連接的主機和帳戶信息。,查詢分析器有許多功能都是非常有用的,對于一般初學者來說,可以把查詢分析器看作T-SQL代碼編譯的地方,在查詢分析器里編寫代碼用以建立數(shù)據(jù)庫、表、視圖、查詢等很多操作。 查詢分析器的啟動前提是服務(wù)管理器已經(jīng)處于啟動狀態(tài)。,3服務(wù)管理器,SQL Server服務(wù)管理器(Service Manager)是在服務(wù)器端實際工作時最有用的實用程序 。,SQL S
7、erver服務(wù)管理器的主要作用是用來啟動數(shù)據(jù)庫服務(wù)器的實時服務(wù)、暫停和停止正在運行的服務(wù),或在暫停服務(wù)后繼續(xù)服務(wù)。,4 客戶端網(wǎng)絡(luò)實用工具,客戶端網(wǎng)絡(luò)實用工具(Client Network Utility)用來配置客戶端的網(wǎng)絡(luò)連接,管理和測定客戶端的網(wǎng)絡(luò)庫等。 進行與SQL Server 2000連接的網(wǎng)絡(luò)配置,通常用戶的SQL Server上無特殊的設(shè)置與更改,基本上連通應(yīng)該都沒有問題,所以這個工具就很容易被用戶忽略。倘若在其他計算機上的SQL Server讓用戶無法連接,可由此工具加入服務(wù)器主機的名稱和網(wǎng)絡(luò)協(xié)議等設(shè)置。,5服務(wù)器網(wǎng)絡(luò)實用工具,服務(wù)器網(wǎng)絡(luò)實用工具(Server Network
8、 Utility)用來配置本計算機作為服務(wù)器時允許使用的連接協(xié)議,還可以在此設(shè)置相關(guān)參數(shù)等。,6 事件探查器,SQL Server 2000中的事件探查器可以即時獲得服務(wù)器的活動,幫助用戶監(jiān)控SQL Server所產(chǎn)生的事件,如登錄失敗、連接終止、Transact-SQL SELECT、INSERT、UPDATE,DELETE的語句、RPC(Remote procedure Call)的批處理狀態(tài)、存儲過程的開始及結(jié)束等??梢杂羞x擇的進行事件的監(jiān)視。 注:不要選擇過多的事件進行監(jiān)視,以免影響性能。,7導入和導出數(shù)據(jù),導入和導出數(shù)據(jù)(Input and Export Data)采用DTS導入/導
9、出向?qū)硗瓿?。此向?qū)О怂械腄TS(Data Transformation Services)工具,提供了在OLE DB數(shù)據(jù)源之間復制數(shù)據(jù)的最簡捷的方法。,8聯(lián)機叢書,SQL Server 2000提供了大量的聯(lián)機幫助文檔(Books Online),它具有索引和全文搜索能力,可根據(jù)關(guān)鍵詞來快速查找用戶所需信息,是用戶學習SQL Server 2000的良師益友。,4. SQL Server 2000的系統(tǒng)數(shù)據(jù)庫,1 SQL Server 2000系統(tǒng)數(shù)據(jù)庫簡介,SQL Server 2000安裝成功后,系統(tǒng)會自動創(chuàng)建6個系統(tǒng)數(shù)據(jù)庫。這些系統(tǒng)數(shù)據(jù)庫的文件存儲在Microsoft SQL S
10、erver默認安裝目錄下的MSSQL子目錄的Data文件夾中,數(shù)據(jù)庫文件的擴展名為 .mdf,數(shù)據(jù)庫日志文件的擴展名為 .ldf。,(2)Model數(shù)據(jù)庫:是所有用戶數(shù)據(jù)庫和Tempdb數(shù)據(jù)庫的模板數(shù)據(jù)庫。它含有Master數(shù)據(jù)庫的所有系統(tǒng)表子集,這些系統(tǒng)數(shù)據(jù)庫是每個用戶定義數(shù)據(jù)庫時都需要的。,(1) Master數(shù)據(jù)庫:記錄了SQL Server系統(tǒng)的所有系統(tǒng)信息。這些系統(tǒng)信息包括所有的登錄信息、系統(tǒng)設(shè)置信息、SQL Server的初始化信息和其它系統(tǒng)數(shù)據(jù)庫及用戶數(shù)據(jù)庫的相關(guān)信息。,msdb數(shù)據(jù)庫是SQL Server中的一個特例。如果你查看這個數(shù)據(jù)庫的實際定義,會發(fā)現(xiàn)它其實是一個用戶數(shù)據(jù)庫
11、。不同之處是SQL Server拿這個數(shù)據(jù)庫來做什么。所有的任務(wù)調(diào)度、報警、操作員都存儲在msdb數(shù)據(jù)庫中。該庫的另一個功能是用來存儲所有備份歷史。SQL Server Agent將會使用這個庫。,(3)Msdb數(shù)據(jù)庫:是代理服務(wù)數(shù)據(jù)庫 。,(4)Tempdb數(shù)據(jù)庫: tempdb數(shù)據(jù)庫是一個非常特殊的數(shù)據(jù)庫,供所有來訪問你的SQL Server的用戶使用。這個庫用來保存所有的臨時表、存儲過程和其他SQL Server建立的臨時用的東西。例如,排序時要用到tempdb數(shù)據(jù)庫。數(shù)據(jù)被放進tempdb數(shù)據(jù)庫,排完序后再把結(jié)果返回給用戶。每次SQL Server重新啟動,它都會清空tempdb數(shù)據(jù)庫
12、并重建。永遠不要在tempdb數(shù)據(jù)庫建立需要永久保存的表。,(5)Pubs和Northwind數(shù)據(jù)庫: 它們是SQL Server自帶的兩個實例數(shù)據(jù)庫。,2 SQL Server 2000系統(tǒng)表簡介,SQL Server 2000有6個系統(tǒng)表: (1)Sysobjects表。SQL Server 的主系統(tǒng)表,出現(xiàn)在每個數(shù)據(jù)庫中。它對每個數(shù)據(jù)庫對象含有一行記錄。 (2)Syscolumns表。出現(xiàn)在master數(shù)據(jù)庫和每個用戶自定義的數(shù)據(jù)庫中,它對基本表或者視圖的每個列和存儲過程中的每個參數(shù)含有一行記錄。,(3)Sysindexes表。出現(xiàn)在master數(shù)據(jù)庫和每個用戶自定義的數(shù)據(jù)庫中,它對每個
13、索引和沒有聚簇索引的每個表含有一行記錄,它還對包括文本/圖像數(shù)據(jù)的每個表含有一行記錄。 (4)Sysusers表。出現(xiàn)在master數(shù)據(jù)庫和每個用戶自定義的數(shù)據(jù)庫中,它對整個數(shù)據(jù)庫中的每個Windows NT用戶、Windows NT用戶組、SQL Server用戶或者SQL Server角色含有一行記錄。,(5)Sysdatabases表。它對SQL Server系統(tǒng)上的每個系統(tǒng)數(shù)據(jù)庫和用戶自定義的數(shù)據(jù)庫含有一行記錄,只出現(xiàn)在master數(shù)據(jù)庫中。 (6)Sysdepends表。它對表、視圖和存儲過程之間的每個依賴關(guān)系含有一行記錄,出現(xiàn)在master數(shù)據(jù)庫和每個用戶自定義的數(shù)據(jù)庫中。,注意:
14、如果使用DDL語句的INSERT,UPDATE和DELETE語句來修改系統(tǒng)表的信息,對整個系統(tǒng)是非常危險的,應(yīng)該使用系統(tǒng)存儲過程來代替。,三、數(shù)據(jù)庫的體系結(jié)構(gòu),數(shù)據(jù)庫是存儲和管理數(shù)據(jù)的對象; 從邏輯上看, 數(shù)據(jù)庫的邏輯存儲結(jié)構(gòu)指的是數(shù)據(jù)庫是由哪些性質(zhì)的信息所組成,所有與數(shù)據(jù)處理操作相關(guān)的信息都存儲在數(shù)據(jù)庫中。 從物理上看, SQL Server 2000數(shù)據(jù)庫是指用于存儲數(shù)據(jù)庫的文件及文件組。數(shù)據(jù)庫的物理存儲結(jié)構(gòu)則是討論數(shù)據(jù)庫文件是如何在磁盤上存儲的。,1、邏輯數(shù)據(jù)庫,邏輯角度的數(shù)據(jù)庫呈現(xiàn)為各種數(shù)據(jù)庫對象,這些數(shù)據(jù)對象是用于編寫數(shù)據(jù)庫應(yīng)用系統(tǒng)和管理數(shù)據(jù)庫的單位。 SQL Server 2000
15、的數(shù)據(jù)庫對象主要包括表(table)、視圖(view)、索引(index)、默認(default)、存儲過程(stored procedure)、觸發(fā)器(trigger)和約束(constraint)等。,在T-SQL語句中,數(shù)據(jù)庫對象可使用兩種對象名: 完全限定名:在SQL Server 2005上創(chuàng)建的每個對象都有唯一的完全限定名。它包括四個部分:服務(wù)器名、數(shù)據(jù)庫名、模式名、所有者名和對象名,其格式為: Server. database. schema. owner. object 部分限定名:只包含對象完全限定名中的一部分的對象名稱 使用TSQL編程時,使用全名往往很繁瑣且沒有必要,所以
16、常省略完全限定名中的某些部分。 對象全名中的前4部分可被省略。,2、物理數(shù)據(jù)庫,物理角度的SQL Server 2005數(shù)據(jù)庫呈現(xiàn)為各種操作系統(tǒng)文件。 在默認安裝路徑C:Program FilesMicrosoft SQL ServerMSSQL.1MSSQLData目錄下存放了數(shù)據(jù)庫的數(shù)據(jù)文件。,SQL Server 的每個數(shù)據(jù)庫都必須包含下面兩類文件。 數(shù)據(jù)文件:用于存放所有數(shù)據(jù)和數(shù)據(jù)庫中建立的所有邏輯對象。又分為主要數(shù)據(jù)文件和次要數(shù)據(jù)文件。 日志文件:記錄了用戶對數(shù)據(jù)庫進行的所有操作。,1)主要數(shù)據(jù)文件(Primary Data File) 主數(shù)據(jù)文件簡稱主文件,它是數(shù)據(jù)庫的關(guān)鍵文件,包
17、含了數(shù)據(jù)庫的啟動信息。 每個數(shù)據(jù)庫必須有且僅能有一個主文件; 其默認擴展名為.MDF; 唯一的,2)次要(輔助)數(shù)據(jù)庫文件(Secondary Data File) 輔助數(shù)據(jù)文件簡稱輔(助)文件,用于存儲未包括在主文件內(nèi)的其他數(shù)據(jù)。 輔助文件的默認擴展名為.NDF。 輔助文件是可選的,根據(jù)具體情況,可以創(chuàng)建多個輔助文件,也可以不用輔助文件。一般當數(shù)據(jù)庫很大時,有可能需要創(chuàng)建多個輔助文件;而數(shù)據(jù)庫較小時,則只要創(chuàng)建主文件而不需要輔助文件。 零個、一個或多個,3)日志文件(Transaction Log File) 日志文件用于保存恢復數(shù)據(jù)庫所需的事務(wù)日志信息。 每個數(shù)據(jù)庫至少有一個日志文件,也可
18、以有多個。 日志文件的擴展名為.LDF。 至少一個,4)數(shù)據(jù)庫文件組 為了便于分配和管理,SQL Server允許將多個文件歸納為同一組,并賦予此組一個名稱,這就是文件組。 主文件組(Primary FileGroup) 用戶定義文件組(Secondary FileGroup),四、創(chuàng)建及管理數(shù)據(jù)庫,在建立用戶邏輯組件之前(如基本表)必須首先建立數(shù)據(jù)庫。 而建立數(shù)據(jù)庫時完成的最實質(zhì)任務(wù)是向操作系統(tǒng)申請用來存儲數(shù)據(jù)庫數(shù)據(jù)的物理磁盤存儲空間。這些存儲空間以操作系統(tǒng)文件的方式體現(xiàn),它們的相關(guān)信息將存儲在master數(shù)據(jù)庫及其系統(tǒng)表中。,創(chuàng)建SQL Server 數(shù)據(jù)庫可以在Management Stuio中以圖形界面的方式交互完成,或者在查詢界面下通過SQL語句完成。 界面方式管理數(shù)據(jù)庫 命令方式下管理數(shù)據(jù)庫,1)界面方式創(chuàng)建數(shù)據(jù)庫,以學生-課程數(shù)據(jù)庫為例,在Management Stuio中以圖形界面的方式練習創(chuàng)建數(shù)據(jù)庫,修改數(shù)據(jù)庫。 例1:要求創(chuàng)建一個學生-課程數(shù)據(jù)庫(名稱為student)。,邏輯名稱:數(shù)據(jù)文件和日志文件名稱 文件類型:數(shù)據(jù)文件及日志文件 文件組:各個數(shù)據(jù)文件所屬的文件組名稱 初始大小:文件大小 自動增長:文件按指定的大小增長,也可限制到最大容量。 路徑:存放
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年三片式球閥項目發(fā)展計劃
- 2025年度汽車銷售市場調(diào)研與分析合同
- 2025版商業(yè)綜合體電梯清潔維護協(xié)議
- 2022年江蘇高考英語真題及答案-2
- 2025年度健康食堂牛羊肉綠色采購配送協(xié)議4篇
- 2025年度足療行業(yè)市場調(diào)研分析合同
- 2025年全自動潷水器合作協(xié)議書
- 幼兒園節(jié)奏感與韻律教育方案計劃
- 班級活動與團隊合作訓練計劃
- 跨學科合作項目的設(shè)計與實踐計劃
- 試產(chǎn)到量產(chǎn)項目轉(zhuǎn)移清單
- 葛傳椝向?qū)W習英語者講話
- 6人小品《沒有學習的人不傷心》臺詞完整版
- 高考英語3500單詞表(帶音標)(亂序版)默寫背誦通用版
- 最終稿(教學評一致)課件
- 每個孩子都能像花兒一樣開放
- 單店爆破促銷活動模式精編文檔
- 中國石油天然氣股份有限公司長慶油田分公司第九采油廠油田產(chǎn)能建設(shè)項目組竣工環(huán)境保護驗收調(diào)查表
- 鋼圍堰監(jiān)測方案
- 人口資源與環(huán)境經(jīng)濟學課件
- YS/T 34.1-2011高純砷化學分析方法電感耦合等離子體質(zhì)譜法(ICP-MS)測定高純砷中雜質(zhì)含量
評論
0/150
提交評論