Структурированный язык запросов SQL

Автор работы: Пользователь скрыл имя, 27 Февраля 2012 в 02:14, курсовая работа

Краткое описание

Transact-SQL является основой SQL Server 7.0, реализуя простые, но в то же время мощные методы доступа к данным. Администратор может сконфигурировать сервер таким образом, что пользователям не нужно будет явно указывать начало и конец транзакций. Сервер сам позаботится об обеспечении целостности данных. Для профессиональной работы с SQL Server 7.0 необходимо понимать механизмы работы Transact-SQL и уметь успешно применять их на практике.

Содержание работы

Введение 3
Основная часть……………………………………………………………………….4
1 Управляющие конструкции transact-sql 4
2 Идентификаторы 6
3 Типы данных 8
Заключение 22
Список использованных источников 23

Содержимое работы - 1 файл

Курсовая Базы Данных.doc

— 154.50 Кб (Скачать файл)

     Основные данные о работе

Версия  шаблона 1.1
Филиал  
Вид работы Курсовая работа
Название  дисциплины Базы данных
Тема «Transact-SQL»
Фамилия студента  
Имя студента  
Отчество  студента  
№ контракта  

 

     Содержание

Введение 3

Основная  часть……………………………………………………………………….4

1 Управляющие конструкции transact-sql 4

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

3 Типы данных 8

Заключение 22

Список использованных источников 23

Приложения………………………………………………………………………....24 

     Введение

     Структурированный язык запросов SQL (Structured Query Language) был разработан в 1970 г. корпорацией IBM как язык управления реляционными базами данных. До него и после него были попытки создания альтернативных языков, но стандартом стал именно SQL. Практически все производители систем управления базами данных используют в своих продуктах ту или иную модификацию SQL. С 1970 г. Было разработано немало версий этого языка, часто не совместимых друг с другом. В результате в 1992 г. американским национальным институтом стандартов (American National Standard Institute-ANSI) был разработан стандарт SQL – 92, описывающий поведение сервера и регламентирующий основные правила работы. Целью разработки этого стандарта было, в частности, уменьшение несовместимости различных вариантов SQL.

     Однако, несмотря на все усилия добиться единого  стандарта, каждый из производителей использует и развивает свою модификацию SQL. В SQL Server 7.0 реализован вариант Transact-SQL, поддерживающий большинство возможностей стандарта ANSI SQL-92, а также ряд дополнений, увеличивающих гибкость и мощность языка. Transact-SQL широко используется не только в продуктах Microsoft, но и в приложениях независимых разработчиков.

     Transact-SQL является основой SQL Server 7.0, реализуя простые, но в то же время мощные методы доступа к данным. Администратор может сконфигурировать сервер таким образом, что пользователям не нужно будет явно указывать начало и конец транзакций. Сервер сам позаботится об обеспечении целостности данных. Для профессиональной работы с SQL Server 7.0 необходимо понимать механизмы работы Transact-SQL и уметь успешно применять их на практике.

       

     Основная  часть

     1 глава Управляющие конструкции Transact-Sql

     Рассмотрим  различные конструкции Transact-SQL, без которых невозможно написание эффективных алгоритмов.

     BEGIN…END

     С помощью этой конструкции выполняется  группировка двух и более команд в единый блок. Сгруппированные команды воспринимаются интерпретатором Transact-SQL как один оператор. Подобная группировка требуется для конструкции поливариантных ветвлений, условных и циклических конструкций. Begin ставится в начале блока. После него располагается одна или несколько команд. Завершается блок ключевым словом END:

          BEGIN

                      SELECT * FROM authors

                      SELECT * FROM titles

                      PRINT ‘Дата : ‘+ CAST (GETDATE () AS char)

          END

     Некоторые команды Transact-SQL не должны выполнятся вместе с другими командами, поэтому их включение в конструкцию BEGIN…END совместно с другими командами не допускается. К таким командам относятся команды резервного копирования, изменения структуры таблиц, хранимых процедур и им подобные.

     IF…ELSE

     Часто определённая часть программы должна выполнятся только при некотором условии. Например, изменять строки в таблице имеет смысл только в том случае, если они имеются. Конструкция IF…ELSE позволяет выполнять указанную команду только при соблюдении логических условий.

     В отличие от большинства языков программирования, в конструкции IF…ELSE языка Transact-SQL не используется ключевое слово THEN. Кроме ТОО, в некоторых языках программирования конструкция IF…ELSE предусматривает включение множества команд. В Transact-SQL позволено указание не более одной команды. Если требуется выполнить более одной команды, необходимо воспользоваться конструкцией BEGIN…END.

     CASE…END

     Эта конструкция часто используется для замены множества одиночных  или вложенных конструкций IF…ELSE. Конструкция CASE…END возвращает результат, который можно использовать в качестве переменной в других выражениях. При этом она рассматривается как функция.

          CASE input_ expression

          WHEN {when_ expression | Boolean_ expression}

          THEN result_ expression

          […n]

          [ELSE else_ result_ expression]

          END

     Конструкцию CASE…END можно также использовать непосредственно в запросе.

     COALESCE

     Эта конструкция возвращает первое нулевое  значение. Её синтаксис таков:

          COALESCE (expression […n])

     Внутри  скобок в этой конструкции через  запятую перечисляется множество значений. Конструкция COALESCE может быть представлена в виде конструкции CASE…END.

     WHILE…BREAK & CONTINUE

     С помощью это конструкции в Transact-SQL организуется циклы, причём это единственный тип циклов, поддерживаемый Transact-SQL. Во многих языках программирования реализовано два, а то три типа циклов. Например, Delphi поддерживает три типа циклов: FOR…TO, WHILE…DO и REPEAT…UNTIL.

     Цикл  можно принудительно остановить, если в его теле выполнить команду BREAK. Если же нужно начать цикл заново, не дожидаясь выполнения всех команд в теле цикла, необходимо выполнить команду CONTINUE. После этой команды цикл переходит к проверке логического условия.

     2 глава Идентификаторы

     Все объекты SQL Server 7.0 имеют свои собственные имена, с помощью которых можно ссылаться на них. Имена объектов называются идентификаторами. Любой объект базы данных должен быть уникально идентифицирован. Transact-SQL налагает ряд ограничений на именование объектов:

     1.Первый  символ имени объекта должен  соответствовать стандарту Unicode Standard 2.0 и быть одним из символов латинского или национального алфавита либо символом «_», то есть не допускается использование в качестве первого символа имени объекта цифр, символов «!», «№», «*» и т.д. Кроме того, для обозначения временных объектов сервер разрешает использование символов «@» (временные переменные или параметры) и «#» (временные таблицы или хранимые процедуры). Временные объекты существуют только в течение сеанса или транзакции, а затем уничтожаются. Для обозначения глобальных временных объектов, к которым могут обращаться все пользователи, Transact-SQL позволяет использовать символы «##». Для обозначения глобальных временных переменных вначале идентификатора указываются символы «@@». Некоторые функции и переменные SQL Server 7.0 начинаются с символов «@@».

  1. Остальная часть идентификатора может включать любые символы, определённые стандартом Unicode Standard 2.0, символы национальных алфавитов, десятичные цифры, символы «@», «#» и «_».
  2. При выборе имени следует убедиться, что оно не является зарезервированным словом (как, например, BEGIN или KILL) и что ещё не существует объекта с таким именем. Transact-SQL не различает регистра, в котором набрано имя, и поэтому считает одинаковыми имена объектов, выбранные в разных регистрах.
  3. Запрещается использование внутри имени пробелов, круглых скобок и специальных символов «~», «!», «%», «^», «&», «-», «{», «}», «`», «.», «\», и «’».
  4. Длина имени объекта не должна превышать 128 символов. Исключение составляют имена временных таблиц, длина имени которых не должна превышать 116 символов.

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

     Многие  хранимые процедуры и команды Transact-SQL требуют указания в качестве аргумента имени таблицы, колонки, представления или другого объекта. В этом случае имена объектов должны заключаться в одинарные кавычки. Выражение, заключенное в одинарные кавычки, рассматривается как символьная строка. Например, для получения информации о таблице title author базы данных pubs необходимо ввести следующую команду:

     EXEC SP _help ‘pubs… title author’

     Если  же название таблицы не соответствует  правилам именования объектов, необходимо заключить имя таблицы в квадратные скобки или двойные кавычки:

     EXES SP _help ‘pubs… ” Title author”’

     EXES SP _help ‘pubs… [Title author]’

Информация о работе Структурированный язык запросов SQL