SQL是什麼?
結構化查詢語言(Structural Query Language,縮寫:SQL),是一種特殊目的之程式語言,用於資料庫中的標準資料查詢語言,最早IBM公司使用在其開發的資料庫系統中。1986年10月,美國國家標準學會對SQL進行規範後,以此作為關聯式資料庫管理系統的標準語言(ANSI X3. 135-1986),1987年得到國際標準組織的支援下成為國際標準。不過各種通行的資料庫系統在其實踐過程中都對SQL規範作了某些編改和擴充。所以,實際上不同資料庫系統之間的SQL不能完全相互通用。如:
- MS SQL Server 使用 T-SQL,
- Oracle 使用 PL/SQL,
- MS Access 的SQL版本叫 JET SQL (本地格式) 等
為什麼使用SQL?
- 允許用戶存取在關係資料庫管理係統的資料。
- 讓用戶來描述資料。
- 允許用戶定義資料庫中的資料和處理資料。
- 允許使用SQL區塊和預編譯器將其他語言中嵌入。
- 允許用戶建置和刪除資料庫,表格,視圖,程序,函數等資料庫物件在資料庫中。
- 允許用戶設置表格,程序和視圖等資料庫物件的權限。
曆史:
- 1970 -- Dr. Edgar F. "Ted" IBM的科德被稱為關係資料庫之父,是他描述了資料庫的關係模型。
- 1974 -- 結構化查詢語言出現。
- 1978 -- IBM合作開發Codd的想法並發布了名為System/R的產品。
- 1986 -- IBM開發了第一台關連式資料庫,並通過ANSI標準化。第一個關連式資料庫是由甲骨文(Oracle)發佈。
SQL 處理過程:
當任何連線對RDBMS執行SQL命令,系統會決定開展最佳途徑和SQL引擎會解析出最佳的路徑。以下是顯示簡單的SQL架構圖表:
SQL 語法:
標準的SQL語法進行互動使用在關係型資料庫有:CREATE, SELECT, INSERT, UPDATE, DELETE 和 DROP。這些語法可分以下三大類。
DDL - 資料定義語言:
命令
|
描述
|
CREATE
|
建置一個新的表格,表格的視圖,或資料庫中的物件
|
ALTER
|
修改現有的資料庫物件,例如一個表格
|
DROP
|
刪除整個表格,資料庫中的表格或其他物件或視圖
|
DML - 資料操縱語言:
命令
|
描述
|
SELECT
|
從一個或多個表格中檢索特定的記錄
|
INSERT
|
新增記錄
|
UPDATE
|
修改記錄
|
DELETE
|
刪除記錄
|
DCL - 資料控製語言:
命令
|
描述
|
GRANT
|
授予用戶權限
|
REVOKE
|
收回用戶授予的權限
|
沒有留言:
張貼留言