




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
第2章關(guān)系數(shù)據(jù)庫基礎(chǔ)教學(xué)提示:數(shù)據(jù)庫技術(shù)產(chǎn)生于20世紀(jì)60年代中期,是計算機科學(xué)發(fā)展的重要分支之一。隨著數(shù)據(jù)庫技術(shù)的發(fā)展,先后出現(xiàn)了層次數(shù)據(jù)模型、網(wǎng)狀數(shù)據(jù)模型和關(guān)系數(shù)據(jù)模型這三種不同的數(shù)據(jù)模型。由這三種數(shù)據(jù)模型作為理論基礎(chǔ)發(fā)展了層次數(shù)據(jù)庫、網(wǎng)狀數(shù)據(jù)庫和關(guān)系數(shù)據(jù)庫三種類型的數(shù)據(jù)庫,而且關(guān)系型數(shù)據(jù)庫已經(jīng)成為當(dāng)今數(shù)據(jù)庫的主流模型,因此掌握關(guān)系型數(shù)據(jù)庫的基礎(chǔ)知識對學(xué)習(xí)SQLServer2005具有很大的幫助作用。教學(xué)目標(biāo):MicrosoftSQLServer是一個關(guān)系型數(shù)據(jù)庫管理系統(tǒng)。用戶學(xué)習(xí)SQLServer2005的目的是為了掌握使用SQLServer2005來進行實際的數(shù)據(jù)庫應(yīng)用設(shè)計和管理數(shù)據(jù)庫系統(tǒng)。一般說來,數(shù)據(jù)庫設(shè)計是一個復(fù)雜的問題。本章并不打算詳細介紹如何設(shè)計出一個性能優(yōu)良的數(shù)據(jù)庫,而是旨在幫助缺少數(shù)據(jù)庫基礎(chǔ)知識的用戶快速了解關(guān)系數(shù)據(jù)庫的基礎(chǔ)概念,為進一步學(xué)習(xí)SQLServer2005作好作備。通過學(xué)習(xí)本章,讀者可以掌握關(guān)系型數(shù)據(jù)庫的基礎(chǔ)知識,并對關(guān)系型數(shù)據(jù)庫語言SQL有所了解。第2章關(guān)系數(shù)據(jù)庫基礎(chǔ)2.1關(guān)系數(shù)據(jù)庫基本概念2.2SQLServer的數(shù)據(jù)庫對象2.3關(guān)系數(shù)據(jù)庫的標(biāo)準(zhǔn)語言SQL2.4數(shù)據(jù)定義語言(DDL)
2.5數(shù)據(jù)操縱語言(DML)
2.6數(shù)據(jù)控制語言(DCL)
2.7Transact-SQL語言介紹2.1關(guān)系數(shù)據(jù)庫基本概念1.關(guān)系2.表3.記錄4.字段5.鍵6.視圖7.事務(wù)2.2SQLServer的數(shù)據(jù)庫對象1.表(table)
表是具體組織和存儲數(shù)據(jù)的對象,表由列和行組成,如表2.1所示。行的順序可以是任意的,列的順序也可以是任意的。在同一個表里,列的名字必須是惟一的。在同一個數(shù)據(jù)庫里,表的名字也必須是惟一的。注意:為了便于管理,一般說來表的名字或列的名字都應(yīng)該按照與存儲內(nèi)容相關(guān)的原則進行命名,例如記錄商品銷售信息的表可以命名為ProSold,表中表示商品銷售價格的列可以命名為ProPrice。2.主鍵(primarykey)
主鍵是表格中的一列或多列的組合。它的值惟一地標(biāo)識了表中的一行記錄。在表中,任意兩行的主鍵不能有具有相同的值。3.外鍵(foreignkey)
外鍵是這樣一列或多列的組合。4.視圖(view)
視圖是從一個或幾個基本表中導(dǎo)出的表。在數(shù)據(jù)庫中只存儲視圖的定義,而沒有存儲對應(yīng)的數(shù)據(jù)。視圖是查看表中數(shù)據(jù)的一種邏輯方法,用戶可以利用視圖作表的安全性措施,可以利用SQL來簡化查詢等。5.約束(constraint)
約束是SQLServer實施數(shù)據(jù)一致性和數(shù)據(jù)完整性的方法。約束對表中各列的取值范圍進行限制,以確保表格中的數(shù)據(jù)都是合理、有效的。6.缺省值(default)
缺省值(或者稱“默認值”)的功能是在向表中插入新的數(shù)據(jù)時,為沒有指定數(shù)據(jù)的列提供一個缺省的數(shù)據(jù)。7.規(guī)則(rule)
規(guī)則也是SQLServer提供的確保數(shù)據(jù)一致性和完整性的方法。規(guī)則提供了一種對特定列或用戶自定義數(shù)據(jù)類型列進行約束的機制。8.索引(index)
索引的主要用途是提供一種無需掃描整張表就能實現(xiàn)對數(shù)據(jù)快速訪問的途徑,使用索引可以優(yōu)化查詢。 9.存儲過程(storedprocedure)
存儲過程是一組經(jīng)過編譯的可以重復(fù)使用的Transact-SQL語句的組合。10.觸發(fā)器(trigger)
觸發(fā)器是一種特殊的存儲過程,能夠在表被修改時自動地由數(shù)據(jù)庫服務(wù)器執(zhí)行。11.數(shù)據(jù)庫關(guān)系圖(databasediagrams)
數(shù)據(jù)庫關(guān)系圖是用戶組織和管理數(shù)據(jù)庫的一種圖形化方式,數(shù)據(jù)庫關(guān)系圖允許用戶以可視化的方式創(chuàng)建、編輯、刪除數(shù)據(jù)庫對象。12.數(shù)據(jù)類型(datatype)SQLServer提供的數(shù)據(jù)類型分為系統(tǒng)數(shù)據(jù)類型和用戶自定義數(shù)據(jù)類型兩種。13.日志(log)SQLServer使用日志來記載用戶對數(shù)據(jù)庫采取的所有操作。日志文件是維護數(shù)據(jù)庫完整性的重要工具。SQLServer是遵循先寫日志再修改數(shù)據(jù)庫數(shù)據(jù)文件原則的數(shù)據(jù)庫系統(tǒng)。2.3關(guān)系數(shù)據(jù)庫的標(biāo)準(zhǔn)語言SQL2.3.1SQL語言的特征
SQL語言是一種非過程化語言,它允許用戶在高層的數(shù)據(jù)結(jié)構(gòu)上操作,而不對單個記錄進行操作。在使用SQL語言的過程中,用戶完全不用考慮諸如數(shù)據(jù)的存儲格式、數(shù)據(jù)的存儲路徑等復(fù)雜的問題。用戶所需要做的只是使用SQL語言提出自己的要求,至于如何實現(xiàn)這些要求,則是關(guān)系數(shù)據(jù)庫管理系統(tǒng)的任務(wù)。2.3.2SQL語言支持的數(shù)據(jù)類型1.int、bigint、smallint和tinyint類型,整形數(shù)據(jù)類型。2.decimal類型和numeric類型精確數(shù)值型數(shù)據(jù)。3.float類型和real類型近似數(shù)值型數(shù)據(jù)。4.bit類型位數(shù)據(jù)。5.char(N)、varchar(N)和text類型字符型數(shù)據(jù)。6.nchar(N)、nvarchar(N)和ntext類型寬字符類型。7.datetime和smalldate類型日期時間數(shù)據(jù)類型。8.money和smallmoney類型貨幣數(shù)據(jù)類型。9.binary(N)和varbinary(N)類型二進制數(shù)據(jù)類型。10.
null類型空數(shù)據(jù)類型。2.3.3SQL語言的表達式1.算術(shù)運算符2.比較運算符3.邏輯運算符4.位運算符2.4數(shù)據(jù)定義語言(DDL)2.4.1建立數(shù)據(jù)庫建立數(shù)據(jù)庫即創(chuàng)建一個新的數(shù)據(jù)庫。CREATEDATABASE語句用于建立數(shù)據(jù)庫,它的簡單語法格式為:CREATEDATABASE<數(shù)據(jù)庫名>[其他參數(shù)]其中,<數(shù)據(jù)庫名>在系統(tǒng)中必須是惟一的,不能重復(fù),否則無法建立數(shù)據(jù)庫。[其他參數(shù)]因具體數(shù)據(jù)庫管理系統(tǒng)不同而異。方括號[]表示其他參數(shù)不是必須的。2.4.2刪除數(shù)據(jù)庫刪除數(shù)據(jù)庫即將數(shù)據(jù)庫及其全部內(nèi)容從系統(tǒng)中刪除。DROPDATABASE語句用于刪除數(shù)據(jù)庫,它的簡單語法格式為:DROPDATABASE<數(shù)據(jù)庫名>
2.4.4刪除基本表刪除基本表即從數(shù)據(jù)庫中刪除一個基本表及其全部內(nèi)容。DROPTABLE語句用于刪除基本表,它的語法格式為:
DROPTABLE[<數(shù)據(jù)庫名>.]表名2.4.5修改基本表在基本表建立并使用一段時間后,可能需要根據(jù)實際要求對基本表的結(jié)構(gòu)進行修改,即通過更改、添加、刪除列和約束,或者通過啟用或禁止約束和觸發(fā)器來對當(dāng)前數(shù)據(jù)庫中的數(shù)據(jù)表進行修改。ALTERTABLE語句用于修改基本表,它的簡單語法格式為:ALTERTABLE[<數(shù)據(jù)庫名>.]表名{[AddField]|[DropField]|[AlterField]}2.4.6建立視圖在SQL中,視圖是外模式一級數(shù)據(jù)結(jié)構(gòu)的基本單位。它是從一個或幾個基本表中導(dǎo)出的表,是從現(xiàn)有基本表中抽取若干子集組成用戶的“專用表”。這種構(gòu)造方式必須使用SQL中的SELECT語句來實現(xiàn)。在定義一個視圖時,只是把其定義存放在系統(tǒng)中,而并不直接存儲視圖對應(yīng)的數(shù)據(jù)——直到用戶使用視圖時才從基本表中取出對應(yīng)的數(shù)據(jù)。CREATEVIEW語句用于建立視圖,它的語法格式為:CREATEVIEW視圖名ASSELECT語句2.4.7刪除視圖刪除視圖將刪除已不再使用的視圖,刪除視圖并不會影響視圖所引用的基本表。DROPVIEW語句用于刪除視圖,它的語法格式為:DROPVIEW視圖名2.5數(shù)據(jù)操縱語言(DML)2.5.1數(shù)據(jù)查詢數(shù)據(jù)查詢是指查詢數(shù)據(jù)庫中的若干表的數(shù)據(jù),它主要用來完成各種數(shù)據(jù)的查詢、統(tǒng)計分析等數(shù)據(jù)處理功能。SELECT語句用于查詢數(shù)據(jù),它是數(shù)據(jù)操縱語句里使用最頻繁的一個語句之一。2.5.2數(shù)據(jù)插入數(shù)據(jù)插入是指向數(shù)據(jù)庫的表中插入新的記錄。INSERT語句用于插入數(shù)據(jù),它的語法格式為:INSERTINTO<表名>[列名1,列名2,…列名n]VALUES([值1,值2,…,值n])VALUES子句中數(shù)據(jù)的順序要與數(shù)據(jù)表中的字段完全對應(yīng)。2.5.3數(shù)據(jù)刪除數(shù)據(jù)刪除是指從數(shù)據(jù)庫中的表刪除指定的記錄。DELETE語句用于刪除數(shù)據(jù),它的語法格式為:DELETEFROM<表名>[WHERE條件表達式]當(dāng)省略WHERE子句時,表示把指定的表清空,但表的結(jié)構(gòu)并沒有被刪除。2.5.4數(shù)據(jù)更新數(shù)據(jù)更新是指對數(shù)據(jù)庫中的表的某些記錄的進行修改。UPDATE語句用于更新數(shù)據(jù),它的語法格式為:UPDATE<表名>SET字段1=新值1[,字段2=新值2,…,字段n=新值n][WHERE條件表達式]2.6數(shù)據(jù)控制語言(DCL)2.6.1分配權(quán)限分配權(quán)限是指為用戶分配對于某個數(shù)據(jù)庫對象所擁有的某種權(quán)限。GRANT語句用于為用戶分配權(quán)限,它的語法格式為:GRANT<權(quán)限>[ON<數(shù)據(jù)庫對象>]TO<用戶名>如果權(quán)限為ALL,則表示把全部權(quán)限分配給了指定用戶。2.6.2回收權(quán)限回收權(quán)限是指收回指定用戶對某個數(shù)據(jù)庫對象的某種權(quán)限。REVOKE語句用于回收權(quán)限,它的語法格式為:REVOKE<權(quán)限>[ON<數(shù)據(jù)庫對象>]FROM<用戶名>2.6.3拒絕權(quán)限拒絕權(quán)限是指拒絕指定用戶對于某個數(shù)據(jù)庫對象使用某種權(quán)限。DENY語句用于拒絕權(quán)限,它的語法格式為:DENY<權(quán)限>[ON<數(shù)據(jù)庫對象>]TO<用戶名>拒絕權(quán)限與回收權(quán)限的區(qū)別在于,回收用戶權(quán)限后,用戶仍然可以通過繼承方式獲得相應(yīng)權(quán)限,而拒絕用戶權(quá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)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年帆船教練職業(yè)能力考核試卷(運動營養(yǎng)學(xué))
- 2025倉庫租賃合同附加協(xié)議書
- 2025中外合資企業(yè)員工聘用合同協(xié)議書
- 2025買賣筆記本電腦合同范本
- 2025鄉(xiāng)村土地使用權(quán)合同長期買賣
- 2025-2030中國港口機械設(shè)備行業(yè)現(xiàn)狀調(diào)查與前景規(guī)劃建議報告
- 2025-2030中國水泥制品行業(yè)產(chǎn)銷規(guī)模預(yù)測及經(jīng)營狀況分析報告
- 2025年宏圖大展科技有限公司投資合同
- 2024年蘇教版小學(xué)一年級語文教學(xué)工作總結(jié)范本(2篇)
- 2025【管理】廣告合同編排管理系統(tǒng)介紹
- 2025年臨沂遴選教師試題及答案
- 2025年烏魯木齊客運從業(yè)資格證模擬考試
- 2025年電梯管理制度
- 2025年云南楚雄州金江能源集團有限公司招聘考試筆試試題(含答案)
- 【KAWO科握】2025年中國社交媒體平臺指南報告
- 消防器材采購服務(wù)方案
- GA∕T 1773.4-2021 機動車駕駛?cè)税踩拿鞑僮饕?guī)范 第4部分:摩托車駕駛
- 道路交通工程專業(yè)英語詞匯(共32頁)
- 外研版初一英語語法知識點總結(jié)復(fù)習(xí)(最新超詳細版)
- 35KV集電線路鐵塔組立專項方案
- 《2021國標(biāo)動力專業(yè)圖集資料》97R412 室外熱力管道支座
評論
0/150
提交評論