摘要:在本教學中,我們將向您介紹 SQL 語言,並討論標準 SQL 和一些流行的 SQL 方言。
SQL 語言簡介
SQL 是一種程式語言,旨在管理儲存在關聯式資料庫管理系統 (RDBMS) 中的資料。
SQL 代表結構化查詢語言。它的發音為 /ˈɛs kjuː ˈɛl/ 或 /ˈsiːkwəl/。
SQL 包含資料定義語言、資料操作語言和資料控制語言。
- 資料定義語言處理綱要的建立和修改,例如,CREATE TABLE 陳述式允許您在資料庫中建立新表格,而 ALTER TABLE 陳述式會變更現有表格的結構。
- 資料操作語言提供查詢資料的結構,例如 SELECT 陳述式,以及更新資料的結構,例如 INSERT、UPDATE 和 DELETE 陳述式。
- 資料控制語言包含處理使用者授權和安全性的陳述式,例如 GRANT 和 REVOKE 陳述式。
SQL 標準
SQL 是自 1970 年代以來最早的商業資料庫語言之一。此後,不同的資料庫供應商在其產品中實作了 SQL,並做了一些變更。為了在供應商之間實現更大的統一性,美國國家標準協會 (ANSI) 在 1986 年發布了第一個 SQL 標準。
然後,ANSI 在 1992 年更新了 SQL 標準,稱為 SQL92 和 SQL2,並在 1999 年再次更新為 SQL99 和 SQL3。每次,ANSI 都會將新的功能和命令新增到 SQL 語言中。
SQL 標準現在由 ANSI 和國際標準化組織作為 ISO/IEC 9075 標準共同維護。最新的發行標準是 SQL:2011。
SQL 標準形式化了跨資料庫產品的 SQL 語法結構和行為。對於 MySQL 和 PostgreSQL 等開放原始碼資料庫而言,這一點變得更加重要,這些 RDBMS 主要由社群而不是大型企業開發。
SQL 方言
社群不斷要求在 SQL 標準中尚未存在的新功能和能力,因此,即使有 SQL 標準,各種資料庫產品中仍存在許多 SQL 方言。
由於 ANSI 和 ISO 尚未開發這些重要功能,RDBMS 供應商(或社群)可以自由發明他們自己的新語法結構。
以下是最流行的 SQL 方言
- PL/SQL 代表程序語言/SQL。它由 Oracle 為 Oracle 資料庫開發。
- Transact-SQL 或 T-SQL 由 Microsoft 為 Microsoft SQL Server 開發。
- PL/pgSQL 代表程序語言/PostgreSQL,它包含在 PostgreSQL 中實作的 SQL 方言和擴充功能
- MySQL 自第 5 版以來,擁有自己的程序語言。請注意,MySQL 已被 Oracle 收購。
在每個教學中,我們將說明在資料庫中有效的 SQL 語法結構和行為。我們也會討論特定資料庫中存在的例外狀況。