是用於訪問和處理數據庫的標準的計算機語言。
通過 SQL 來管理數據
結構化查詢語言 (SQL) 是用於訪問數據庫的標準語言,這些數據庫包括 SQL Server、Oracle、MySQL、Sybase 以及 Access 等等。
對於那些希望在數據庫中存儲數據並從中獲取數據的人來說,SQL 的知識是價值無法衡量的。
什麼是 SQL?
- SQL 指結構化查詢語言 (Structured Query Language)
- SQL 使我們有能力訪問數據庫
- SQL 是一種 ANSI 的標準計算機語言
- SQL 面向數據庫執行查詢
- SQL 可從數據庫取回數據
- SQL 可在數據庫中插入新的紀錄
- SQL 可從數據庫刪除記錄
- SQL 很容易學習
編者注:ANSI,美國國家標準化組織
SQL 是一種標準 - 但是...
SQL 是一門 ANSI 的標準計算機語言,用來訪問和操作數據庫系統。SQL 語句用於取回和更新數據庫中的數據。SQL 可與數據庫程序協同工作,比如 MS Access、DB2、Informix、MS SQL Server、Oracle、Sybase 以及其他數據庫系統。
不幸地是,存在着很多不同版本的 SQL 語言,但是爲了與 ANSI 標準相兼容,它們必須以相似的方式共同地來支持一些主要的關鍵詞(比如 SELECT、UPDATE、DELETE、INSERT、WHERE 等等)。
註釋:除了 SQL 標準之外,大部分 SQL 數據庫程序都擁有它們自己的私有擴展!
SQL 數據庫表
一個數據庫通常包含一個或多個表。每個表由一個名字標識(例如“客戶”或者“訂單”)。表包含帶有數據的記錄(行)。
下面的例子是一個名爲 "Persons" 的表:
LastName | FirstName | Address | City |
---|---|---|---|
Hansen | Ola | Timoteivn 10 | Sandnes |
Svendson | Tove | Borgvn 23 | Sandnes |
Pettersen | Kari | Storgt 20 | Stavanger |
上面的表包含三條記錄(每一條對應一個人)和四個列(姓、名、地址和城市)。
SQL 查詢程序
通過 SQL,我們可以查詢某個數據庫,並獲得返回的一個結果集。
查詢程序類似這樣:
SELECT LastName FROM Persons
結果集類似這樣:
LastName |
---|
Hansen |
Svendson |
Pettersen |
註釋:某些數據庫系統要求在 SQL 命令的末端使用分號。在我們的教程中不使用分號。
SQL 數據操作語言 (DML)
SQL (結構化查詢語言)是用於執行查詢的語法。但是 SQL 語言也包含用於更新、插入和刪除記錄的語法。
這些查詢和更新語句都來自 SQL 的 DML 部分:
- SELECT - 從數據庫表中獲取數據
- UPDATE - 更新數據庫表中的數據
- DELETE - 從數據庫表中刪除數據
- INSERT INTO - 向數據庫表中插入數據
SQL 數據定義語言 (DDL)
SQL 的數據定義語言部分使我們有能力創建或刪除表格。我們也可以定義索引(鍵),規定表之間的鏈接,以及施加表間的約束。
SQL 中最重要的 DDL 語句:
- CREATE TABLE - 創建新表
- ALTER TABLE - 變更(改變)數據庫表
- DROP TABLE - 刪除表
- CREATE INDEX - 創建索引(搜索鍵)
- DROP INDEX - 刪除索引