КАТЕГОРИИ: Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748) |
Внимание! Идентифицирующие значения
Переменные Переменные, параметры и коды возврата SQL Server предоставляет объекты трех типов для передачи значений в ваш программный (клиентский по отношению к СУБД) код, а также возврата скалярного значения вызывающей серверный код на Transact-SQL программе.
Переменные обеспечивают манипулирование данными, их хранение и передачу как внутри процедуры, так и между хранимыми процедурами и функциями. В SQL Server есть два вида переменных: локальные и глобальные. Локальная переменная обозначается одним символом "эт" (@), а глобальная переменная — двумя (@@). Кроме того, локальные переменные вы можете создавать, читать и писать в них, а глобальные переменные можно только читать. В табл. 1 перечислены некоторые самые популярные глобальные переменные.
Таблица 1. Глобальные переменные
Переменная @@identity содержит последнее идентифицирующее значение, вставленное в таблицу или представление в текущем соединении c SQL Server. Если вы вызываете несколько программных кодов, вставляющих идентифицирующие значения, последнее вставленное значение всегда содержится в переменной @@identity. Например, если вызывается процедура, вставляющая строку в таблицу ТаblеА, которая содержит триггер, вставляющий строки в таблицы TableB, TableC и TableD, причем каждая вставка генерирует новое значение идентификации, значение @@identity, которое извлекается следом за вставкой в таблицу ТаblеА, соответствует значению идентификации, вставленному в TableD. Из-за этого ограничения применять @@identity не рекомендуется. Используйте вместо нее функцию scope identity(), которая вернет последнее идентифицирующее значение, вставленное в пределах текущей инструкции.
Конкретная переменная, которая не является входным параметром функции или процедуры, можно определить с помощью инструкции declare, в которой указываете имя и тип данных переменной. У переменной может быть любой тип данных, кроме типов text, ntext и image. Например, DECLARE @intvariable INT, @datevariable date -- В вышеприведенном коде определены 2 переменные: -- @intvariable – типа int, -- @datevariable – типа date
-- В коде, приведенном ниже, определена табличная --- переменная, состоящая из 2-х столбцов: -- ID – типа int, Patient – типа VARCHAR(50). -- Оба столбца не могут быть равны null. -- Сама табличная переменная хранится в оперативной -- памяти и удаляется при покидании программы -- пределов видимости переменной.
DECLARE @tablevar table ( ID INT not null, Patient VARCHAR(50) NOT NULL )
Дата добавления: 2014-01-04; Просмотров: 437; Нарушение авторских прав?; Мы поможем в написании вашей работы! Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет |