Die SET-Anweisung weist einer Variablen einen neuen Wert zu. Die Variable muss zuvor mit einer CREATE VARIABLE-Anweisung oder
einer DECLARE-Anweisung erstellt worden sein, oder ein OUTPUT-Parameter einer Prozedur sein. Die Variable kann optional die
Transact-SQL-Konvention eines @-Zeichens vor einem Namen verwenden. Beispiel:
SET @localvar = 42
Eine Variable kann in einer SQL-Anweisung überall dort verwendet werden, wo ein Spaltenname zugelassen ist. Wenn ein Spaltenname
mit demselben Namen wie der der Variablen besteht, wird der Wert der Variablen verwendet.
Variablen gehören lokal zur aktuellen Verbindung und verschwinden, sobald Sie die Verbindung zur Datenbank trennen oder die
DROP VARIABLE-Anweisung verwenden. Sie werden von den Anweisungen COMMIT oder ROLLBACK nicht beeinflusst.
Variablen werden für die Erstellung von umfangreichen Text- oder Binärobjekten für die INSERT- oder UPDATE -Anweisungen von
Embedded SQL-Programmen benötigt, da Embedded SQL-Hostvariablen auf 32767 Byte begrenzt sind.
SQL/2008
Die SET-Anweisung ist Teil der optionalen SSQL/2008-Sprachenfunktion P002 (Verarbeitungsvollständigkeit).
Transact-SQL
Die SET-Anweisung wird von Adaptive Server Enterprise unterstützt. In ASE kann eine einzelne SET-Anweisung verwendet
werden, um Werte mehreren Variablen zuzuordnen, wobei die einzelnen Zuordnungsklauseln durch Kommas getrennt werden.