首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 數據庫知識 >  >> SQL Server 資料庫 >> 關於SqlServer

SQL 語言核心架構解析:DML、DDL、DCL 三大分類與標準指令完整對照

     編輯:關於SqlServer

SQL (Structured Query Language) 是關聯式資料庫管理系統 (RDBMS) 的標準語言。本文系統梳理 SQL 的功能分類、核心指令集與基本特性,建立完整知識地圖。

SQL 基本特性

  • 宣告式語言:描述「要什麼」而非「怎麼做」,由優化器決定執行計畫
  • 無程式控制結構:無迴圈 (while/for)、條件分支 (if-else)、自訂函數等程式語言特性
  • 固定資料類型系統:無法像程式語言自訂類型
  • 集合導向操作:以關聯代數為理論基礎,操作對象為關係 (資料表)

三大功能分類架構

分類全名中文用途核心指令
DMLData Manipulation Language資料操作語言檢索、修改資料內容SELECT, INSERT, UPDATE, DELETE
DDLData Definition Language資料定義語言定義資料庫結構/物件CREATE, ALTER, DROP, TRUNCATE
DCLData Control Language資料控制語言權限、安全性、交易控制GRANT, REVOKE, COMMIT, ROLLBACK

DML 詳細指令

指令功能典型語法
SELECT查詢檢索SELECT col FROM table WHERE cond;
INSERT新增資料INSERT INTO table (col) VALUES (val);
UPDATE修改資料UPDATE table SET col=val WHERE cond;
DELETE刪除資料DELETE FROM table WHERE cond;

DDL 詳細指令

指令功能說明
CREATE TABLE建立資料表定義欄位、型別、約束、索引
ALTER TABLE修改表結構增/刪/改欄位、約束、索引
DROP TABLE刪除資料表移除結構與資料,不可復原
CREATE INDEX建立索引提升查詢效能
DROP INDEX刪除索引釋放空間、維護效能

DCL 詳細指令

指令功能
GRANT授予權限 (SELECT, INSERT, EXECUTE 等)
REVOKE撤銷權限
COMMIT確認交易
ROLLBACK回滾交易
CREATE SYNONYM建立同義詞 (簡化物件引用)

直觀範例:查詢 CS 部門員工姓名

SELECT Employees.Name
FROM Employees
WHERE Employees.DeptID = 'CS';

解析:

  • FROM Employees:指定資料來源表格
  • WHERE Employees.DeptID = 'CS':過濾條件,僅保留部門代碼為 CS 的列
  • SELECT Employees.Name:投影輸出姓名欄位

主流 RDBMS 廠商與相容性

Oracle、Sybase、Microsoft SQL Server、Access、Ingres、PostgreSQL、MySQL、SQLite、MariaDB 等均支援核心 SQL 標準,但各有專有擴展 (如 T-SQL、PL/SQL、PL/pgSQL)。移植應用時需注意方言差異。

學習建議

  1. 先掌握標準 SQL 核心 (本文涵蓋範圍)
  2. 再深入目標資料庫的專有擴展與優化技巧
  3. 實務中善用資料庫工具 (SSMS、DataGrip、DBeaver 等) 提升效率
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved