- 21天學通SQL Server
- 秦婧 劉存勇編著
- 1625字
- 2019-03-01 13:16:14
1.3 認識SQL語言
人與人交互必須使用人類的某種自然語言,例如英語、漢語和蒙語等。人與數據庫交互就不能使用人類的自然語言了,而需要使用SQL語言。人們使用SQL語言可以告訴具體的數據庫系統要干什么工作,讓其返回什么數據等。
1.3.1 什么是SQL
SQL(Structured Query Language,結構化查詢語言)是用于數據庫查詢和設計的語言。最早的SQL標準是在20世紀80年代初,由美國國家標準局(ANSI)制定的。出臺SQL的標準后,很多數據庫系統都支持SQL的標準,這也就是為什么學了SQL語言后,就可以使用任何一款數據庫產品的原因。目前大部分的數據庫使用的是1999年制定的SQL-99標準。在此之前有過SQL-92標準、SQL-89標準、SQL-86標準,分別是在1992年、1989年、1986年制定的SQL標準。SQL語言之所以被數據庫采用,主要是因為SQL具有如下特點:
1.綜合性
綜合性是指使用SQL語言可以完成數據表的創建、刪除、修改及對表中數據的添加、修改、刪除、查詢等操作,此外,還可以通過SQL語言為數據庫的用戶授予和收回用戶的權限。
2.高度非過程化
所謂非過程化就是指在完成某些操作時不需要指定完成的步驟,過程化的操作就像安裝文件,安裝程序必須按安裝步驟一步一步安裝,并且在安裝程序時還要執行安裝文件的路徑等操作。而非過程化的操作就是指出“做什么”就行,比如向表中插入數據。
3.語法簡單易學
任何一種語言能夠作為一個標準的前提是這種語言必須簡單易學,SQL語言就是這樣一種語言。數據庫本身就是用來存儲數據的,那么操作數據也不會那么復雜,因此SQL語言也是很多數據庫廠商的首選,同時提高了數據庫語言的通用性。雖然每一款數據庫都使用SQL語言作為操作數據庫的語言,但是每一款數據庫中都在SQL語言的基礎上添加了能夠體現各自數據庫特征的語言,也可以說是對SQL語言的擴充,比如在SQL Server中使用T-SQL語言,在Oracle中使用PL/SQL語言。
1.3.2 SQL語言的分類
SQL語言可以完成對數據表的操作、表中數據的操作、用戶權限的操作以及數據查詢的操作,根據SQL語言操作可以把SQL語言分為4類:數據定義語言、數據操縱語言、數據控制語言及數據查詢語言。下面將分別講解這4類語言的使用。
1.數據定義語言(DDL)
數據定義語言(DDL),即Data Definition Language。所謂數據定義語言,就是指對數據表定義的語言。在數據定義語言中主要有CREATE、ALTER、DROP及TRUNCATE 4個關鍵字。其中,
● CREATE:CREATE的中文意思就是創建,使用它可以完成創建表的操作。
● ALTER:ALTER的中文意思就是改變,使用它可以完成修改表的操作。
● DROP:DROP的中文意思就是放棄,使用它可以完成刪除表的操作。
● TRUNCATE:TRUNCATE的中文意思就是截去,使用它可以完成刪除表中全部數據的操作。但是如果使用TRUNCATE刪除數據,數據是不能恢復的,所以使用TRUNCATE刪除表中數據的效率是比較高的。
2.數據操縱語言(DML)
數據操縱語言(DML),即Data Manipulation Language。所謂數據操縱語言,是指對數據表中數據的操作。在數據操縱語言中主要有INSERT、UPDATE、DELETE 3個關鍵字。具體的相關含義如下。
● INSERT:INSERT的中文意思是插入,使用INSERT可以完成向數據表中添加數據的操作。
● UPDATE:UPDATE的中文意思是更新,使用UPDATE可以完成更新數據表中的數據。
● DELETE:DELETE的中文意思是刪除,使用DELETE可以完成刪除數據表中的數據。
說明:在DDL語言中講解了TRUNCATE關鍵字也是用來刪除表中數據的,DELETE與TRUNCATE的區別是使用DELETE刪除的數據還能恢復,并且使用DELETE可以刪除表中的部分數據,但是從性能方面考慮,使用DELETE刪除數據性能差一些。
3.數據控制語言(DCL)
數據控制語言(DCL),即Data Control Language。所謂數據控制語言,是指對數據庫中的用戶進行權限的控制。在數據控制語言中主要有GRANT、DENY、REVOKE 3個關鍵字。它們的含義如下。
● GRANT:GRANT的中文意思是授予,使用它可以為數據庫中用戶授予權限。
● DENY:DENY的中文意思是拒絕、否認,使用它可以限制數據庫中用戶的權限。
● REVOKE:REVOKE的中文意思是撤銷,使用它可以撤銷數據庫中用戶的權限。
4.數據查詢語言(DQL)
數據查詢語言(DQL),即Data Query Language。在有的書上也把DQL語言歸到DML語言中,本書為了方便區分對數據表的操作,特將其與DML語言分開。在數據查詢語言中只有一個關鍵字,就是SELECT,主要用于查詢數據表中的數據。查詢可以說是數據表操作中最常用的一種操作,經常用于統計。
- 數據之巔:數據的本質與未來
- Developing Mobile Games with Moai SDK
- 數據庫應用基礎教程(Visual FoxPro 9.0)
- Mockito Cookbook
- 城市計算
- Power BI商業數據分析完全自學教程
- Oracle PL/SQL實例精解(原書第5版)
- 深入淺出 Hyperscan:高性能正則表達式算法原理與設計
- Chef Essentials
- 大數據分析:數據倉庫項目實戰
- SQL Server 數據庫教程(2008版)
- 數據可視化五部曲
- Applying Math with Python
- 大數據SQL優化:原理與實踐
- Building Multicopter Video Drones