首發微信公眾號:SQL資料庫運維 原文鏈接:https://mp.weixin.qq.com/s?__biz=MzI1NTQyNzg3MQ==&mid=2247485212&idx=1&sn=450e9e94fa709b5eeff0de371c62072b&chksm=ea37536cdd40da7 ...
首發微信公眾號:SQL資料庫運維
通過之前文章的更新講解,大家現在應該已經對SQL有個大概的認識了,如果還是有些許不瞭解的話,可以溫習下之前的文章,溫故而知新:SQL 語法、SQL 簡介(點擊文字可跳轉至鏈接文章)這兩篇文章,此篇文章主要是針對Oracle資料庫而言。
SQL是一個結構化的的查詢語言(Structured Query Language ),眾所周知,在日常開發、運維中使用SQL語句可以對Oracle進行對象的創建、刪除,數據的插入、刪除、更新,以及資料庫的管理等操作,但是SQL不僅僅適用於Oracle資料庫,在MySQL、SQL Server、PostgreSQL等其它的資料庫同樣也適用,如果非要說有哪些不同點的話,最多也就是部分函數的寫法及使用方法不同。
在 Oracle 開發中,客戶端把 SQL 語句發送給伺服器,伺服器對 SQL 語句進行編譯、執行,最後,把執行的結果返回給客戶端。在這個過程中,常用的SQL語句大致可以分為五類:
-
數據定義語言(DDL):是用於描述資料庫中要存儲的現實世界實體的語言。包括 CREATE(創建table或者view)命令、 ALTER(修改)命令、 DROP(刪除)、TRUNCATE(只刪除 數據不刪除表的結構)命令等。
-
數據操作語言(DML):主要功能即是訪問數據,因此其語法都是以讀取與寫入資料庫為主。包括 INSERT(插入)命令、 UPDATE(更新)命令、 DELETE(刪除)命令等。
-
數據查詢語言(DQL):查詢是SQL語言的核心,SQL語言只提供唯一一個用於資料庫查詢的語句,即SELECT語句。包括基本查詢SELECT語句、 Order By 子句、 Group By 子句等。DQL是數據開發工作者最經常使用的語言,掌握DQL是重中之重。
-
事務控制語言(TCL):事務是由一系列對資料庫表中數據進行訪問和更新的操作所組成的一個執行邏輯單元。只有DML語句才會產生事務,其他語句不會產生事務。包括 COMMIT(提交)命令、 SAVEPOINT(保存點)命令、ROLLBACK(回滾)命令。
-
數據控制語言(DCL):是一種可對數據訪問權進行控制的指令,它可以控制特定用戶賬戶對數據表、查看表、存儲程式、用戶自定義函數等資料庫對象的控制權。包括GRANT(授權用戶許可權)命令、 REVOKE(撤銷用戶許可權)命令。在預設狀態下,操作需在sys或在system用戶下完成,使用sysdba或sysoper角色才有權力執行DCL。