Студопедия — Язык реляционных баз данных Transact-SQL (T-SQL). История развития. Идентификаторы в T-SQL
Студопедия Главная Случайная страница Обратная связь

Разделы: Автомобили Астрономия Биология География Дом и сад Другие языки Другое Информатика История Культура Литература Логика Математика Медицина Металлургия Механика Образование Охрана труда Педагогика Политика Право Психология Религия Риторика Социология Спорт Строительство Технология Туризм Физика Философия Финансы Химия Черчение Экология Экономика Электроника

Язык реляционных баз данных Transact-SQL (T-SQL). История развития. Идентификаторы в T-SQL






 

Структурированный язык запросов SQL был разработан в 1970 г. корпорацией IBM как язык управления реляционных баз данных. До него и после него были попытки создания альтернативных языков, но стандартом стал именно SQL. Практически все производители систем управления БД используют в своих продуктах, ту или иную модификацию SQL.

С 1970 г. было разработано много версий этого языка, часто несовместимых друг с другом. В результате в 1992 г. амер. национальным институтом стандартов был разработан стандарт SQL-92, описывающий поведение серверов БД и регламентирующий основные правила работы. Целью разработки этого стандарта было уменьшение несовместимости различных версий SQL. Но несмотря на усилия и попытки добиться единого стандарта, каждый из производителей использует и развивает свою модификацию SQL. Microsoft SQL сервер реализован вариантом transact SQL, поддерживающий большинство способностей SQL-92 и ряд дополнений, увеличивающий гибкость и мощность языка.

 

Идентификаторы

Все объекты MS SQL сервер имеют свои собственные имена, с помощью которых можно ссылаться на них.

Имена объектов называются идентификаторами. Любой объект БД должен быть уникально идентифицирован. Transact SQL налагает ряд ограничений наименований объектов:

1) первый символ имени объекта должен быть одним из символов латинского или национального алфавита, либо символом подчеркивания. Т. е. Не допускается использование в качестве первого символа имени объекта цифр, (*,!,?…). Для обозначения объектов сервер разрешает использование символов @, # для именования временных таблиц и хранимых процедур. Временные объекты существуют только в течении сеанса или транзакции, а за тем уничтожаются. Для обозначения глобальных временных объектов, к которым могут обращаться все пользователи Transact SQL позволяет использовать символы @@, ##. Некоторые функции и переменные начинаются с символа @@.

2) Основная часть идентификатора может включать любые символы, десятичные цифры, подчеркивание, решетки и т. д.

3) При выборе имени следует убедится, что оно не является зарезервированным словом и что не существует объект с таким именем. Transact SQL не различает регистров, в которых набраны символы и поэтому считает одинаковыми имена объектов в разных регистрах.

4) Запрещено использование внутри имени пробелов, круглых скобок и спец. символов.

5) Длина имени объекта не должна превышать 128 символов. Исключения составляют имена временных таблиц, длина имени которых не должна превышать 116 символов. Для обхода некоторых ограничений можно заключать имена объектов в двойные кавычки или квадратные скобки. В этом случае разрешается использование в имени объекта пробелов, спец. символов и символов зарезервированных слов.

Идентификаторы, заключающиеся в двойные кавычки или квадратные скобки, называются ограниченными идентификаторами.

 

21. Язык T-SQL. Выражения.

Выражение SQL сервер представляет собой комбинацию идентификаторов, функций, логических и арифметических операций, констант и других объектов.

Выражение может быть использовано в качестве аргумента в командах, хранимым процедурах или запросах. Выражение состоит из операндов и операторов.

Операнды SQL сервер делится на следующие типы:

1) Константы - постоянные величины, значения которых не могут быть изменены.

2) Функции – именованные программы, выполняющие обработку данных и в некотором случае возвращает. Функции реализуют наиболее часто выполняемые алгоритмы, что избавляет пользователей от многократного написания одного кода.

3) Имя колонки. В качестве операнда может выступать колонка таблицы. Это используется при обработки данных таблицы, удовлетворяющих определенному критерию. Пользователь указывает в выражении имя интересующей колонки, а сервер автоматически подставляет туда соответствующее значение. При последовательном просмотре таблицы имя колонки будет изменяться.

4) Переменная - именованная область памяти определенного объема, в которой хранятся данные. Фактически любая переменная- это последовательность из одного или несколько байт. То, как сервер будет обрабатывать последовательность, представленную значением переменной зависит от типа данных, ассоциированной с этой переменной.

5) Подзапрос. В качестве выражения можно указать подзапрос, который подготавливает соответствующий набор данных. По принципу работы это эквивалентно указанию колонки таблицы только в случае подзапроса. Данные не дано явно закачивать в таблицу. Сервер сам создает временную таблицу с необходимой структурой, копируя в нее выбранные данные, и подключает полученный набор данных в качестве выражения. Выполняемые действия задаются с помощью операторов, которые делятся на типы:

1) Простейшие или унарные. Работают только с одним операндом. Простейшие операторы могут быть использованы с любыми величинами числового типа, как с числовыми, так и с дробными.

2) Присваивание. Используется для присваивания переменной определенного значения, полученного в результате вычисления выражения. В SQL единственный оператор присваивания:=, который также используется в операторе сравнения.

DECLARE @@ variable int

SET @@ variable=10

3) Арифметические. Это бинарные операции, выполняемые с операндами, имеющими числовой тип данных. К ним относят *, /, +, -, %. Арифметические операторы возвращают значения того же типа, что и входные.

4) Строковые. Единственные операции, которые можно непосредственно производить под операндами символьного типа- конкатенация или сложение. Для обозначения «+».

5) Сравнения. Операторы сравнения могут дать информацию о сравнительной величине операндов. Допускается использование следующих логических операндов: равно «=», больше «>», меньше «<», меньше пли равно «<=», больше или равно «>=>>, не равно «!=>> или «<>>>, не менее чем «!<», не более чем «!>». Результатом выполнения логического операнда будет значение «истина» (TRUE), если условие выполняется, или «ложь» (FALSE) в противном случае. Если сравнение невозможно (например, в случае несовпадения типов), то возвращается неопределенное значение NULL.

6) Логические. Операторы этого типа возвращают значения TRUE или FALSE и могут быть использованы в различных конструкциях, включая запросы. Логические операторы могут быть представлены в виде нескольких опера­торов сравнения и являются своего рода надстройкой над ними.

 

В Transact SQL есть следующие операторы:

 

1 ALL. Выполняет сравнение для набора данных. Если условие выполнено для всего набора данных, возвращается значение TRUE.

2. AND. Оперирует с двумя булевыми выражениями. Только если оба выражения истинны (TRUE),возвратится значение TRUE.

3. ANY. Выполняет сравнение для набора данных. Если условие выполнено хотя бы для одного элемента из набора данных, возвращается значение TRUE.

4. BETWEEN. Проверяет, лежит ли значение в указанном диапазоне.

5. EXIST. Возвращает TRUE,если подзапрос возвращает хотя бы одну строку. Та­ким образом, этот оператор проверяет существование данных.

6. IN. Возвращает TRUE,если значение входит в указанный список..

7. LIKE. Проверяет значение на «похожесть» по указанному шаблону.

8. NOT. Инвертирует значение булева типа, то есть заменяет TRUE на FALSE и наоборот.

9. OR. Возвращает TRUE,если хотя бы один из двух операндов равен -TRUE.

10. SOME. Выполняет сравнение для набора данных. Если условие выполнено для одного элемента из набора данных, возвращается значение TRUE. Аналог ANY.

 

22. Язык T-SQL. Числовые и денежные типы данных. Типы данных для хранения информации о времени.

Понятие типа данных в SQL Server полностью адекватно понятию типа данных в современных языках программирования. Тип данных определяет диапазон значений, которые можно сохранить в переменной или колонке таблицы.







Дата добавления: 2015-04-19; просмотров: 931. Нарушение авторских прав; Мы поможем в написании вашей работы!



Аальтернативная стоимость. Кривая производственных возможностей В экономике Буридании есть 100 ед. труда с производительностью 4 м ткани или 2 кг мяса...

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

Расчетные и графические задания Равновесный объем - это объем, определяемый равенством спроса и предложения...

Кардиналистский и ординалистский подходы Кардиналистский (количественный подход) к анализу полезности основан на представлении о возможности измерения различных благ в условных единицах полезности...

Демографияда "Демографиялық жарылыс" дегеніміз не? Демография (грекше демос — халық) — халықтың құрылымын...

Субъективные признаки контрабанды огнестрельного оружия или его основных частей   Переходя к рассмотрению субъективной стороны контрабанды, остановимся на теоретическом понятии субъективной стороны состава преступления...

ЛЕЧЕБНО-ПРОФИЛАКТИЧЕСКОЙ ПОМОЩИ НАСЕЛЕНИЮ В УСЛОВИЯХ ОМС 001. Основными путями развития поликлинической помощи взрослому населению в новых экономических условиях являются все...

Обзор компонентов Multisim Компоненты – это основа любой схемы, это все элементы, из которых она состоит...

Кран машиниста усл. № 394 – назначение и устройство Кран машиниста условный номер 394 предназначен для управления тормозами поезда...

Приложение Г: Особенности заполнение справки формы ву-45   После выполнения полного опробования тормозов, а так же после сокращенного, если предварительно на станции было произведено полное опробование тормозов состава от стационарной установки с автоматической регистрацией параметров или без...

Studopedia.info - Студопедия - 2014-2024 год . (0.008 сек.) русская версия | украинская версия