Константы, имена, идентификаторы, переменные TRANSACT–SQL

 

В языке Transact–SQL имеются следующие виды констант:

· битовые: 0 и 1;

· логические: FALSE и TRUE;

· бинарные в шестнадцатеричном представлении: 0x9E70DA;

· символьные: ‘ABC’; “ABC” (если QUOTED_IDENTIFIER = OFF), N ‘ABC’ или N “ABC” (Unicode);

· целые: 1; 2; 175;

· с фиксированной точкой: 12.35; - 16.753;

· с плавающей точкой: 1.75Е5; 3.84Е – 3;

· для даты: “ April 15.2003”; “4/15/2003”; “20031207”;

· для времени: 14:30; 14:30:20:999; 4am; 4pm;

· денежные: $100;?200; 2.15.

Комментарии в языке бывают двух типов: строчные, начинающиеся с двух символов минуса («--») и блочные, заключаемые символами /* и */. Все объекты базы данных должны иметь имена, которые используются в командах для ссылки на эти объекты. Любой объект базы данных должен быть уникально идентифицирован. Помимо программных имен сервер автоматически генерирует внутренние уникальные имена для идентификации объектов баз данных, например, PK_ _Table X_ _ 014543FA. Программные имена задаются идентификаторами двух типов:

стандартными идентификаторами: Table X; Key Col;

· ограниченными идентификаторами: [My Table]; [Order]; “My Table”; “Order”;

· (если QUOTED_IDENTIFIER = ON).

Длина идентификатора – от 1 до 128 символов. Идентификатором не может быть какое-либо зарезервированное ключевое слово языка. Стандартный идентификатор в качестве первого символа может иметь любую латинскую или русскую букву, знаки #, ##, @, @@ и знак подчеркивания _. Последующими знаками, помимо указанных знаков, могут быть еще и десятичные цифры.

Ограниченные идентификаторы могут включать и другие символы, в том числе зарезервированные слова. В этом случае они должны заключаться в квадратные скобки или двойные кавычки.

В соответствии с идеологией SQL Server 2000 каждый объект создается определенным пользователем и принадлежит той или иной базе данных. В свою очередь база данных расположена на конкретном сервере. Из имен объекта, пользователя, базы данных и сервера создается полное имя (complete name) или полностью определенное имя (full qualified name), записываемое в следующем виде:

[[[server.].[database].[owner_name].] object_name.

Варианты обращения к объектам базы данных: A.B.C.D; A.B..D; A..C.D; A..D; B.C.D; B..D; C.D; D. Чтобы сослаться на конкретный столбец таблицы или представления, необходимо в полном имени указать пятый элемент: А.В.С.D.E.

В Transact–SQL существует несколько способов передачи данных между командами. Одним из таких способов является передача данных через локальные переменные, объявляемые следующим образом:

DECLARE {@ имя локальной переменной тип данных}[,…n]

Таким образом, знак @ является признаком имени локальной переменной. Этот же знак используется для определения имен параметров функций и хранимых процедур. Часть синтаксиса [,…n] означает повторение синтаксической конструкции, взятой в фигурные скобки:

DECLARE @Ivar int или DECLARE @IBit bit.

Значения переменным можно присвоить с помощью команд SET и SELECT. Командой SET можно присвоить значение только одной переменной: SET @Ivar = 5

или SET @IBit = 0.

Для присваивания значений нескольким переменным, вычисляемых с помощью выражений, следует использовать команду SELECT, которая выводит результаты в окно Grids:

SELECT @Ivar = SUM (price) FROM titles _ _ см. окно Result.

Для вывода значений переменных следует использовать команды:

· SELECT – для вывода данных в стандартный набор строк;

· PRINT – для вывода данных как служебной информации.

Примеры команд вывода значений переменных:

· SELECT @Ivar _ _ в окно Grids утилиты Query Analyzer;

· PRINT @IBit _ _ в окно Messages утилиты Query Analyzer.

Константы, переменные и параметры функций и хранимых процедур, вызовы функций, имена столбцов и подзапросы являются операторами арифметических и логических выражений. В качестве операнда может быть также само выражение типа CFSE, NULLIF и COALESCE.

Операторами выражения могут быть унарные («+» или «-»), бинарные арифметические операторы (+, -, *, %), оператор присваивания (=), строковая операция конкатенации (+), операторы сравнения (=, >, <, <=, >=, =,!= или <>,!<,!>), логические операторы (NOT, AND, OR, ALL, ANY, BETWEEN, EXIST, IN, LIKE, SOME) и битовые операторы (&, |, ^).

Константы, переменные, операнды и выражения используются при записи команд и программирования функций и хранимых процедур, которые, все вместе взятые, составляют основную часть системы программирования SQL Server 2000 и определяют ее выразительную мощь. Команды позволяют создавать, модифицировать и удалять базы данных и их объекты, формировать сложные запросы на ввод, обработку и извлечение данных из баз знаний, выполнять функции администрирования и обслуживания баз данных. Функции и хранимые процедуры реализуют разнообразные алгоритмы обработки данных или выполнение служебных функций сервера.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: