| # | 差異項目 | MySQL | MS SQL Server |
|---|---|---|---|
| 1 | ENUM/SET 型別 | 支援 | 不支援 |
| 2 | NCHAR/NVARCHAR/NTEXT | 不支援 | 支援 |
| 3 | 自動遞增 | AUTO_INCREMENT | IDENTITY(1,1) |
| 4 | 預設值語法 | 不允許雙括號 ((0)) | 預設 ((0)) |
| 5 | 儲存引擎 | 建表必須指定 | 單一引擎 |
| 6 | 識別符號 | 反引號 ` | 方括號 [] |
| 7 | 目前日期時間 | NOW() / CURDATE() | GETDATE() |
| 8 | REPLACE INTO | 支援 | 2008+ 支援 MERGE |
| 9 | INSERT SET 語法 | 支援 INSERT INTO t SET c1='v' | 不支援 |
| 10 | 多值 INSERT | 支援 VALUES (..),(..) | 不支援 |
| 11 | 分頁 | LIMIT offset, rows | TOP / ROW_NUMBER() |
| 12 | 儲存引擎選擇 | 每表指定 | 單一 |
| 13 | DATETIME 預設值 | 用 TIMESTAMP | 直接 DEFAULT GETDATE() |
| 14 | DROP IF EXISTS | DROP TABLE IF EXISTS t | 需查 sysobjects 判斷 |
| 15 | 無符號整數 | 支援 | 不支援 |
| 16 | VARCHAR(MAX) | 不支援 | 支援(兼具 BLOB) |
| 17 | 非叢集索引建立 | KEY idx (a,b) | CREATE NONCLUSTERED INDEX... |
| 18 | TEXT 預設值 | 不允許 | 允許 |
| 19 | 單表欄位總長 | 65535 位元組 | 視版本而定 |
| 20 | 安裝體積/複雜度 | ~110 MB,簡單 | 數 GB,複雜 |
| 21 | 管理工具 | Workbench, Front, phpMyAdmin | SSMS(最強) |
| 22 | 預存程序成熟度 | 5.0+ 新增,較弱 | 成熟、高效能 |
| 23 | 資源佔用 | 低 CPU/記憶體 | 高 |
| 24 | PHP 連線函數 | mysql_* / mysqli | mssql_* / sqlsrv |
| 25 | DATE/TIME 型別 | 早期支援 | 2008 才支援 |
遷移專案時請逐項核對,特別注意分頁、自動遞增、識別符號、預設值與索引語法差異。