sql 中 exec 命令用于執行存儲過程或動態 sql 語句。它通過執行預編譯的存儲過程,或在運行時生成并執行 sql 查詢,來實現自動化任務、動態生成查詢和增強程序性。
SQL 中 EXEC 的含義
SQL 中的 EXEC 命令用于執行存儲過程或動態 SQL 語句。
詳細說明:
EXEC 命令后跟存儲過程或動態 SQL 語句的名稱。存儲過程是一組預編譯的 Transact-SQL (T-SQL) 語句,可以多次執行,而無需重新編譯。動態 SQL 語句是運行時生成的 SQL 語句,允許在運行時基于輸入參數修改查詢。
EXEC 命令的語法如下:
EXEC [schema_name.]stored_procedure_name [parameter_list]
登錄后復制
或者:
EXEC(@dynamic_sql_variable)
登錄后復制
參數:
schema_name:存儲過程所在架構的名稱(可選)。
stored_procedure_name:要執行的存儲過程的名稱。
parameter_list:傳遞給存儲過程的參數列表(可選)。
@dynamic_sql_variable:包含要執行的動態 SQL 語句的變量。
示例:
執行存儲過程:
EXEC Sales.GetCustomers
登錄后復制
執行動態 SQL 語句:
DECLARE @sql NVARCHAR(MAX) = 'SELECT * FROM Sales WHERE CustomerID = 1' EXEC(@sql)
登錄后復制
EXEC 命令可以用于以下場景:
自動化任務:通過執行存儲過程自動化重復性任務,例如數據插入、更新和刪除。
動態生成查詢:根據用戶輸入或其他動態條件在運行時生成 SQL 查詢。
增強程序性:通過調用存儲過程或動態 SQL 語句,在 T-SQL 腳本中實現程序性邏輯。






