Transact-SQL
Transact-SQL (T-SQL) — расширение языка SQL компаний Microsoft (для Microsoft SQL Server) и Sybase (для Adaptive Server Enterprise).
С тем чтобы сделать язык более мощным, SQL был расширен такими дополнительными возможностями как:
- управляющие операторы
- локальные переменные
- различные дополнительные функции (для обработки строк, дат, математические и др.)
- поддержка аутентификации Microsoft Windows
Управляющие операторы
Для управления потоком исполнения в Transact-SQL используются следующие операторы: BEGIN
и END
, BREAK
, CONTINUE
, GOTO
, IF
и ELSE
, RETURN
, WAITFOR
и WHILE
.
Локальные переменные
Для объявления локальной переменной заданного типа используется ключевое слово DECLARE
. При объявлении все переменные инициализируются значением NULL
. Чтобы присвоить переменной значение, нужно использовать ключевое слово SET
.
Следующий скрипт объявляет переменную целого типа, задаёт ей значение и выполняет цикл используя её в качестве счётчика.
DECLARE @Counter INT SET @Counter = 10 WHILE @Counter > 0 BEGIN PRINT 'The count is ' + CONVERT(VARCHAR(10), @Counter) SET @Counter = @Counter - 1 END
Также переменная может быть инициализирована результатом запроса:
DECLARE @UserName NVARCHAR(100) SELECT @UserName = UserName FROM Users
После исполнения данного скрипта значение переменной @UserName
равно значению соответствующего поля последней выбранной записи. При этом, если запрос не вернёт ни одной записи, значение переменной, в отличие от оператора SET
, не изменится.
Ссылки
- Справочник по Transact-SQL для SQL Server 2000 (MSDN)
- Справочник по Transact-SQL для SQL Server 2005 (MSDN)