SQL語言基礎第一章第二章 基本概念_第1頁
SQL語言基礎第一章第二章 基本概念_第2頁
SQL語言基礎第一章第二章 基本概念_第3頁
SQL語言基礎第一章第二章 基本概念_第4頁
SQL語言基礎第一章第二章 基本概念_第5頁
已閱讀5頁,還剩22頁未讀, 繼續免費閱讀

下載本文檔

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

文檔簡介

第2章關系數據庫基礎教學提示:數據庫技術產生于20世紀60年代中期,是計算機科學發展的重要分支之一。隨著數據庫技術的發展,先后出現了層次數據模型、網狀數據模型和關系數據模型這三種不同的數據模型。由這三種數據模型作為理論基礎發展了層次數據庫、網狀數據庫和關系數據庫三種類型的數據庫,而且關系型數據庫已經成為當今數據庫的主流模型,因此掌握關系型數據庫的基礎知識對學習SQLServer2005具有很大的幫助作用。教學目標:MicrosoftSQLServer是一個關系型數據庫管理系統。用戶學習SQLServer2005的目的是為了掌握使用SQLServer2005來進行實際的數據庫應用設計和管理數據庫系統。一般說來,數據庫設計是一個復雜的問題。本章并不打算詳細介紹如何設計出一個性能優良的數據庫,而是旨在幫助缺少數據庫基礎知識的用戶快速了解關系數據庫的基礎概念,為進一步學習SQLServer2005作好作備。通過學習本章,讀者可以掌握關系型數據庫的基礎知識,并對關系型數據庫語言SQL有所了解。第2章關系數據庫基礎2.1關系數據庫基本概念2.2SQLServer的數據庫對象2.3關系數據庫的標準語言SQL2.4數據定義語言(DDL)

2.5數據操縱語言(DML)

2.6數據控制語言(DCL)

2.7Transact-SQL語言介紹2.1關系數據庫基本概念1.關系2.表3.記錄4.字段5.鍵6.視圖7.事務2.2SQLServer的數據庫對象1.表(table)

表是具體組織和存儲數據的對象,表由列和行組成,如表2.1所示。行的順序可以是任意的,列的順序也可以是任意的。在同一個表里,列的名字必須是惟一的。在同一個數據庫里,表的名字也必須是惟一的。注意:為了便于管理,一般說來表的名字或列的名字都應該按照與存儲內容相關的原則進行命名,例如記錄商品銷售信息的表可以命名為ProSold,表中表示商品銷售價格的列可以命名為ProPrice。2.主鍵(primarykey)

主鍵是表格中的一列或多列的組合。它的值惟一地標識了表中的一行記錄。在表中,任意兩行的主鍵不能有具有相同的值。3.外鍵(foreignkey)

外鍵是這樣一列或多列的組合。4.視圖(view)

視圖是從一個或幾個基本表中導出的表。在數據庫中只存儲視圖的定義,而沒有存儲對應的數據。視圖是查看表中數據的一種邏輯方法,用戶可以利用視圖作表的安全性措施,可以利用SQL來簡化查詢等。5.約束(constraint)

約束是SQLServer實施數據一致性和數據完整性的方法。約束對表中各列的取值范圍進行限制,以確保表格中的數據都是合理、有效的。6.缺省值(default)

缺省值(或者稱“默認值”)的功能是在向表中插入新的數據時,為沒有指定數據的列提供一個缺省的數據。7.規則(rule)

規則也是SQLServer提供的確保數據一致性和完整性的方法。規則提供了一種對特定列或用戶自定義數據類型列進行約束的機制。8.索引(index)

索引的主要用途是提供一種無需掃描整張表就能實現對數據快速訪問的途徑,使用索引可以優化查詢。 9.存儲過程(storedprocedure)

存儲過程是一組經過編譯的可以重復使用的Transact-SQL語句的組合。10.觸發器(trigger)

觸發器是一種特殊的存儲過程,能夠在表被修改時自動地由數據庫服務器執行。11.數據庫關系圖(databasediagrams)

數據庫關系圖是用戶組織和管理數據庫的一種圖形化方式,數據庫關系圖允許用戶以可視化的方式創建、編輯、刪除數據庫對象。12.數據類型(datatype)SQLServer提供的數據類型分為系統數據類型和用戶自定義數據類型兩種。13.日志(log)SQLServer使用日志來記載用戶對數據庫采取的所有操作。日志文件是維護數據庫完整性的重要工具。SQLServer是遵循先寫日志再修改數據庫數據文件原則的數據庫系統。2.3關系數據庫的標準語言SQL2.3.1SQL語言的特征

SQL語言是一種非過程化語言,它允許用戶在高層的數據結構上操作,而不對單個記錄進行操作。在使用SQL語言的過程中,用戶完全不用考慮諸如數據的存儲格式、數據的存儲路徑等復雜的問題。用戶所需要做的只是使用SQL語言提出自己的要求,至于如何實現這些要求,則是關系數據庫管理系統的任務。2.3.2SQL語言支持的數據類型1.int、bigint、smallint和tinyint類型,整形數據類型。2.decimal類型和numeric類型精確數值型數據。3.float類型和real類型近似數值型數據。4.bit類型位數據。5.char(N)、varchar(N)和text類型字符型數據。6.nchar(N)、nvarchar(N)和ntext類型寬字符類型。7.datetime和smalldate類型日期時間數據類型。8.money和smallmoney類型貨幣數據類型。9.binary(N)和varbinary(N)類型二進制數據類型。10.

null類型空數據類型。2.3.3SQL語言的表達式1.算術運算符2.比較運算符3.邏輯運算符4.位運算符2.4數據定義語言(DDL)2.4.1建立數據庫建立數據庫即創建一個新的數據庫。CREATEDATABASE語句用于建立數據庫,它的簡單語法格式為:CREATEDATABASE<數據庫名>[其他參數]其中,<數據庫名>在系統中必須是惟一的,不能重復,否則無法建立數據庫。[其他參數]因具體數據庫管理系統不同而異。方括號[]表示其他參數不是必須的。2.4.2刪除數據庫刪除數據庫即將數據庫及其全部內容從系統中刪除。DROPDATABASE語句用于刪除數據庫,它的簡單語法格式為:DROPDATABASE<數據庫名>

2.4.4刪除基本表刪除基本表即從數據庫中刪除一個基本表及其全部內容。DROPTABLE語句用于刪除基本表,它的語法格式為:

DROPTABLE[<數據庫名>.]表名2.4.5修改基本表在基本表建立并使用一段時間后,可能需要根據實際要求對基本表的結構進行修改,即通過更改、添加、刪除列和約束,或者通過啟用或禁止約束和觸發器來對當前數據庫中的數據表進行修改。ALTERTABLE語句用于修改基本表,它的簡單語法格式為:ALTERTABLE[<數據庫名>.]表名{[AddField]|[DropField]|[AlterField]}2.4.6建立視圖在SQL中,視圖是外模式一級數據結構的基本單位。它是從一個或幾個基本表中導出的表,是從現有基本表中抽取若干子集組成用戶的“專用表”。這種構造方式必須使用SQL中的SELECT語句來實現。在定義一個視圖時,只是把其定義存放在系統中,而并不直接存儲視圖對應的數據——直到用戶使用視圖時才從基本表中取出對應的數據。CREATEVIEW語句用于建立視圖,它的語法格式為:CREATEVIEW視圖名ASSELECT語句2.4.7刪除視圖刪除視圖將刪除已不再使用的視圖,刪除視圖并不會影響視圖所引用的基本表。DROPVIEW語句用于刪除視圖,它的語法格式為:DROPVIEW視圖名2.5數據操縱語言(DML)2.5.1數據查詢數據查詢是指查詢數據庫中的若干表的數據,它主要用來完成各種數據的查詢、統計分析等數據處理功能。SELECT語句用于查詢數據,它是數據操縱語句里使用最頻繁的一個語句之一。2.5.2數據插入數據插入是指向數據庫的表中插入新的記錄。INSERT語句用于插入數據,它的語法格式為:INSERTINTO<表名>[列名1,列名2,…列名n]VALUES([值1,值2,…,值n])VALUES子句中數據的順序要與數據表中的字段完全對應。2.5.3數據刪除數據刪除是指從數據庫中的表刪除指定的記錄。DELETE語句用于刪除數據,它的語法格式為:DELETEFROM<表名>[WHERE條件表達式]當省略WHERE子句時,表示把指定的表清空,但表的結構并沒有被刪除。2.5.4數據更新數據更新是指對數據庫中的表的某些記錄的進行修改。UPDATE語句用于更新數據,它的語法格式為:UPDATE<表名>SET字段1=新值1[,字段2=新值2,…,字段n=新值n][WHERE條件表達式]2.6數據控制語言(DCL)2.6.1分配權限分配權限是指為用戶分配對于某個數據庫對象所擁有的某種權限。GRANT語句用于為用戶分配權限,它的語法格式為:GRANT<權限>[ON<數據庫對象>]TO<用戶名>如果權限為ALL,則表示把全部權限分配給了指定用戶。2.6.2回收權限回收權限是指收回指定用戶對某個數據庫對象的某種權限。REVOKE語句用于回收權限,它的語法格式為:REVOKE<權限>[ON<數據庫對象>]FROM<用戶名>2.6.3拒絕權限拒絕權限是指拒絕指定用戶對于某個數據庫對象使用某種權限。DENY語句用于拒絕權限,它的語法格式為:DENY<權限>[ON<數據庫對象>]TO<用戶名>拒絕權限與回收權限的區別在于,回收用戶權限后,用戶仍然可以通過繼承方式獲得相應權限,而拒絕用戶權限后,用戶就不能再通

溫馨提示

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

評論

0/150

提交評論