適用場景
針對 SQL Server / T-SQL 語法,整理日常開發、運維最常用的 DDL 與 DML 指令,適合新手入門與老手速查。
1. 建立資料表
CREATE TABLE [TableName] (
[Id] INT IDENTITY(1,1) PRIMARY KEY,
[Col1] NVARCHAR(50) DEFAULT '預設值' NULL,
[Col2] NTEXT NULL,
[Col3] DATETIME,
[Col4] MONEY NULL,
[Col5] INT DEFAULT 0,
[Col6] DECIMAL(12,4) DEFAULT 0,
[Col7] IMAGE NULL
);
IDENTITY(1,1):自增主鍵,種子 1、遞增 1。
NVARCHAR 支援 Unicode,NTEXT 存大文本,IMAGE 存二進位。
2. 刪除資料表
DROP TABLE [TableName];
3. 新增資料
INSERT INTO [TableName] (Col1, Col2) VALUES (100, N'51Windows.Net');
4. 刪除資料
DELETE FROM [TableName] WHERE [ColName] > 100;
5. 更新資料
UPDATE [TableName]
SET [Col1] = 200,
[Col2] = N'51Windows.Net'
WHERE [Col3] = N'HAIWA';
6. 修改表結構 (ALTER TABLE)
| 操作 | 語法範例 |
| 新增欄位 | ALTER TABLE [TableName] ADD [NewCol] NVARCHAR(50) NULL; |
| 刪除欄位 | ALTER TABLE [TableName] DROP COLUMN [ColName]; |
| 修改欄位型別/長度 | ALTER TABLE [TableName] ALTER COLUMN [ColName] NVARCHAR(100) NULL; |
7. 重命名資料表
EXEC sp_rename 'OldTableName', 'NewTableName', 'OBJECT';
8. 約束管理
| 操作 | 語法範例 |
| 新增 CHECK 約束 | ALTER TABLE [TableName] ADD CONSTRAINT CK_Name CHECK ([DateCol] <= '2000-01-01'); |
| 刪除 CHECK 約束 | ALTER TABLE [TableName] DROP CONSTRAINT CK_Name; |
| 新增 DEFAULT 約束 | ALTER TABLE [TableName] ADD CONSTRAINT DF_Name DEFAULT N'51Windows.Net' FOR [ColName]; |
| 刪除 DEFAULT 約束 | ALTER TABLE [TableName] DROP CONSTRAINT DF_Name; |
小貼士
- 所有物件名建議加方括號
[],避免保留字衝突。
N'字串' 前綴表示 Unicode 字串常數。
- 生產環境執行 DDL 前請先備份、評估鎖定影響。