Сделай Сам Свою Работу на 5

Назначение, стандарты, достоинства языка SQL

 

Язык SQL (Structured Query Language) – это структурированный язык запросов для работы с БД.

Этот язык пригоден для использования многими СУБД на множестве современных компьютерных платформ. Пользователи, владеющие им, имеют огромные возможности доступа и применения данных разнообразных баз независимо от среды их создания.

Язык SQL имеет определенный набор команд, которые позволяют осуществлять:

· организацию данных;· изменение данных;· чтение данных;· управление доступом к данным;

· совместное использование данных;· обеспечение их целостности;· обращение к БД в прикладных программах.

Достоинства SQL:1. Независимость от конкретных СУБД:

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

2. Переносимость с одной вычислительной системы на другую:

а) SQL используется в СУБД, предназначенных для различных вычислительных систем: от персональных компьютеров и рабочих станций до локальных сетей, мини-компьютеров и больших ЭВМ;

б) однопользовательские приложения на основе SQL могут быть перенесены в более крупные системы;

в) информация из корпоративных реляционных баз данных может быть загружена в базы данных отдельных подразделений или в личные базы данных;

Наличие стандартов.

Официальный стандарт языка SQL был опубликован Американским институтом национальных стандартов (American National Standards Institute — ANSI) и Международной организацией по стандартам (International Standards Organization — ISO) в 1986 году.

Затем в 1992 году он был расширен до стандарта SQL:92(SQL 2).

В 1999 году появился стандарт SQL:99 (известный также как SQL 3).

В конце 2003 году был принят и опубликован новый вариант международного стандарта SQL:2003.

Эти стандарты служат как бы официальной печатью, одобряющей SQL, и они ускорили завоевание им рынка.


Структура команда SQL

 

Каждая команда SQL начинается с действия – ключевого слова или группы слов, описывающих выполняемую операцию. Например, INSERT (добавить), DELETE (удалить), COMMIT (завершить), CREATE TABLE (создать таблицу).



Примечание. В языках программирования ключевое слово – название, зарезервированное для определенных целей, например, названий команд, устройств и т.п.

После действия может следовать одно или несколько предложений. Предложение описывает данные, с которыми работает команда, или содержит уточняющую информацию о действии, выполняемом командой. Каждое предложение начинается с ключевого слова, такого как, например, WHERE (где), FROM (откуда), INTO (куда), HAVING (имеющий). Многие предложения содержат имена таблиц и полей БД; некоторые – константы и выражения.

Имена таблиц, полей и пользователей должны содержать от 1 до 18 символов, начинаться с буквы и не содержать пробелов или специальных символов пунктуации. В качестве имен нельзя использовать ключевые слова SQL.


 

 

Типы данных и выражения в SQL

Тип данных Описание
CHAR(длина) CHARACTER(длина) Строка символов постоянной длины
INTEGER INT Целое число
SMALLINT Малое целое число
NUMERIC(точность, степень) DECIMAL(точность, степень DEC(точность, степень) Число с фиксированной запятой
FLOAT (точность) Число с плавающей запятой

 

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

Выражения в SQL используются для выполнения операций над значениями, которые считаны из БД, или для выбора информации из БД. Выражения представляют собой определенную последовательность полей, констант, функций, соединенных операторами.Для указания конкретных значений данных используются константы. Различают следующие виды констант: 1).Константы с фиксированной запятой (пишут точку)(62.3); 2).Константы с плавающей запятой(2.5Е-6); 3).Строковые константы (должны быть заключены в одинарные кавычки: 'Минск' ). 4). Отсутствующее значение (NULL). SQL поддерживает обработку отсутствующих данных с помощью понятия «отсутствующее значение».

Хотя в SQL-1 стандартные функции не определены, большинство СУБД поддерживает так называемые агрегатные (итоговые) функции. К часто используемым агрегатным функциям можно отнести следующие:

· COUNT – количество значений в столбце,

· SUM – сумма значений в столбце,

· AVG – среднее значение в столбце,

· MAX – максимальное значение в столбце,

· MIN – минимальное значение в столбце.

 


 

Возможности языка SQL

Определение данных

Язык определения данных (DDL) – для создания и изменения структуры БД

Команда CREATE TABLE создает структуру таблицы

DEFAULT – значение по умолчанию

NOT NULL – обязательность заполнения

CHECK – ограничение на значения

PRIMARY KEY, FOREIGN KEY – первичный ключ, внешний ключ

UNIQUE – условие уникальности

Команда DROP TABLE удаляет таблицу

Команда ALTER TABLE изменяет структуру таблицы

ADD (добавить столбец)

DROP (удалить столбец)

ALTER (изменить значение по умолчанию) и др.

Внесение изменений в БД

Команда INSERT добавляет новую строку в таблицу

Команда UPDATE обновляет данные таблицы

Команда DELETE удаляет из таблицы строки

3. Извлечение данных из БД

SELECT FROM, WHERE, GROP BY, HAVING, ORDER BY

 


 

Понятия и типы транзакций. Обработка транзакций SQL

Условия целостности данных:

1) обязательное наличие данных;

2) условие на значение;

3) целостность таблицы;

4) ссылочная целостность;

5) деловые правила;

6) непротиворечивость.

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

SQL-транзакция – последовательность команд SQL, обладающая свойством атомарности (неделимости) относительно восстановления состояния базы данных. Иначе говоря, это несколько последовательных команд SQL, которые рассматриваются как единое целое.

В языке SQL обработка транзакций реализована с помощью двух команд: COMMIT и ROLLBACK. Они управляют изменениями, выполненными группой команд. Команда COMMIT сообщает об успешном окончании транзакции. Она информирует СУБД о том, что транзакция завершена, все ее команды выполнены успешно и противоречия в БД не возникли. Команда ROLLBACK сообщает о неуспешном окончании транзакции. Она информирует СУБД о том, что пользователь не хочет завершать транзакцию, и СУБД должна отменить все изменения, внесенные в БД в результате выполнения транзакции. В этом случае СУБД возвращает БД в состояние, в котором она находилась до выполнения транзакции.

Команды COMMIT и ROLLBACK используются в основном в программном режиме, хотя возможно их использование и в интерактивном режиме.


Управление доступом к данным в SQL

 

К категории Управление доступом к данным относятся команды для осуществления административных функций, присваивающих или отменяющих привилегию использовать таблицы в БД определенным образом. Каждый пользователь БД имеет определенные привилегии по отношению к объектам БД. Привилегии – права пользователя на проведение тех или иных действий над определенным объектом БД. Привилегии могут меняться с течением времени: старые могут отменяться, новые – добавляться. Стандартом языка SQL предусмотрены следующие привилегии:

• SELECT – право читать таблицу;INSERT – право добавлять данные в таблицу;UPDATE – право изменять данные таблицы;

• DELETE – право удалять данные из таблицы;

• REFERENCES – право определять первичный ключ.

Пользователь, создавший таблицу, является ее владельцем. Как владелец, пользователь имеет все привилегии на таблицу и может назначить привилегии для работы с ней другим пользователям. Кроме владельца, привилегии может назначать администратор БД.

 



©2015- 2019 stydopedia.ru Все материалы защищены законодательством РФ.