SQL簡介

SQL是一種操作數據庫的語言; 它包括數據庫創建,刪除,獲取行,修改行等。SQL是ANSI(美國國家標準協會)標準語言,但有許多不同版本的SQL語言。

SQL只是一種查詢語言,它不是數據庫。 要執行SQL查詢,您需要安裝任何數據庫,例如Oracle,MySQL,MongoDB,PostGre SQL,SQL Server,DB2等。

1. SQL是什麼?

SQL是結構化查詢語言,它是一種用於存儲,操作和檢索存儲在關係數據庫中的數據的計算機語言。

SQL是關係數據庫系統的標準語言。所有關係數據庫管理系統(RDMS)如:MySQL,MS Access,Oracle,Sybase,Informix,Postgres和SQL Server都使用SQL作爲其標準數據庫語言。

此外,關係數據庫管理系統使用不同的方言,如 -

  • MS SQL Server使用T-SQL,
  • Oracle使用PL/SQL,
  • MS Access的SQL版本稱爲JET SQL(本機格式)等。

2. 爲什麼要使用SQL?

SQL廣受歡迎,因爲它具有以下優點 -

  • 允許用戶訪問關係數據庫管理系統中的數據。
  • 允許用戶描述數據。
  • 允許用戶定義數據庫中的數據並操縱這些數據。
  • 允許使用SQL模塊,庫和預編譯器嵌入其他語言。
  • 允許用戶創建和刪除數據庫和表。
  • 允許用戶在數據庫中創建視圖,存儲過程和函數。
  • 允許用戶設置表,過程和視圖的權限。

3. SQL簡史

  • 1986年 - IBM開發了第一個關係數據庫原型並由ANSI標準化,第一個關係數據庫由Relational Software發佈,後來被稱爲:Oracle。
  • 1978年 - IBM致力於開發Codd的想法,併發布了一款名爲System/R的產品。
  • 1974年 - 出現了結構化查詢語言。
  • 1970年 - IBM的Dr. Edgar F. 「Ted」 Codd 博士是關係數據庫的之父,他第一個描述了數據庫的關係模型。

4. SQL處理

當RDBMS執行SQL命令時,系統會確定執行請求的最佳方式,而SQL引擎會確定如何解析任務。

此過程中包含各種組件。這些組件是 -

  • 查詢調度程序
  • 優化引擎
  • 經典查詢引擎
  • SQL查詢引擎等

經典查詢引擎處理所有非SQL查詢,但SQL查詢引擎不處理邏輯文件。

以下是SQL體系結構的圖示 -

SQL簡介

5. SQL命令

與關係數據庫交互的標準SQL命令是:CREATESELECTINSERTUPDATEDELETEDROP。 這些命令可根據其性質分爲以下幾組:

5.1. DDL - 數據定義語言

序號

命令

描述

1

CREATE

用於在數據庫中創建新表,表視圖或其他對象。

2

ALTER

用於修改現有數據庫對象,例如:表。

3

DROP

用於刪除整個表,數據庫中的表或其他對象的視圖。

5.2. DML - 數據操縱語言

序號

命令

描述

1

SELECT

從一個或多個表中檢索某些記錄。

2

INSERT

創建一條記錄。

3

UPDATE

用於修改(更新)記錄。

4

DELETE

刪除記錄。

5.3. DCL - 數據控制語言

序號

命令

描述

1

GRANT

爲用戶提供權限。

2

REVOKE

撤銷用戶授予的權限。