除了標準 DML/DDL,SQL Server 提供一組系統級命令支援備份、緩衝區管理、一致性檢查、變數宣告等核心運維功能。深入理解這些命令的語法、權限、副作用,是資深 DBA 的必修課。
DUMP 命令,SQL 2000 起標準化為 BACKUP。BACKUP DATABASE|LOG {db_name} TO <備份裝置> [WITH 選項]COMPRESSION、CHECKSUM、COPY_ONLY (不影響差異基準)、ENCRYPTION。CHECKPOINT [checkpoint_duration]
checkpoint_duration (秒) 可調節 I/O 節流,避免衝擊線上負載。DBCC CHECKDB、CHECKALLOC、CHECKCATALOG、SHOWCONTIG、FREEPROCCACHE、INPUTBUFFER 等數十種。DBCC CHECKDB (db) WITH NO_INFOMSGS, ALL_ERRORMSGS — 完整邏輯/實體一致性檢查。DBCC CHECKALLOC — 頁面配置一致性 (GAM/SGAM/PFS)。DBCC CHECKCATALOG — 系統目錄一致性。sysadmin 或 db_owner 權限,執行期間可能持有鎖定影響並發。DECLARE
{ @local_variable data_type }
| { @cursor_variable CURSOR }
| { @table_variable table_type_definition }
[ ,...n ]
SET 或 SELECT 賦值。
-- 範例 4-16: 宣告變數並賦值
DECLARE @x float, @y datetime;
SELECT @x = PI(), @y = GETDATE();
PRINT @x; -- 3.14159
PRINT @y; -- Jun 17 2000 4:32PM
-- 錯誤: 未指定長度
DECLARE @s char; -- 長度預設 1,截斷風險
DECLARE @s varchar; -- 長度預設 1
-- 正確: 明確指定長度
DECLARE @s char(50);
DECLARE @s varchar(100);
DECLARE @s nvarchar(200); -- Unicode 支援
BACKUP 納入 SQL Agent 排程,驗證 RESTORE VERIFYONLY,異地複製備份檔。CHECKPOINT 並設定 recovery interval 控制復原時間目標 (RTO)。DBCC CHECKDB,生產環境可用 PHYSICAL_ONLY 加速 (僅檢查實體結構)。這四大命令橫跨備份復原、記憶體管理、完整性驗證、程式設計基礎,構成 SQL Server 運維與開發的核心指令集。