Доклад: Язык SQL: общая характеристика, интерфейс с традиционными языками программирования
2. Статический SQL позволяет записать фиксированный исполняемый код SQL, он обычно используется в приложениях на процедурных языках.
Есть две разновидности статического SQL: встроенный и модульный.
Встроенный SQL определен как код SQL, который включен в исходный текст программы, написанной на другом языке программирования. В реальной жизни большинство приложений разрабатываются на алгоритмических языка (например, Си или Кобол), однако для обращения к БД используется встроенный SQL.
В модульном варианте операторы SQL записаны в отдельных модулях, которые компонуются с модулями основного языка. В первый стандарт – SQL86 – был включен только модульный SQL, а встроенный SQL не нашел себе места в официальной части стандарта, хотя и был приведен в приложении. Сегодня встроенный SQL пользуется гораздо большей популярностью среди разработчиков, чем модульный, и стандарт SQL92 поддерживает обе версии статического SQL.
3. Динамический SQL дает возможность генерировать код SQL во время исполнения приложения и используется вместо статического SQL в тех случаях, когда при разработке приложения необходимый код SQL еще не может быть определен или зависит от того, какой выбор сделает пользователь.
Операторы динамического SQL обычно применяются в диалоговых средах для построения запросов и в графических средствах разработки приложений БД.
5. Типы команд SQL
Реализация в SQL концепции операций, ориентированных на табличное представление данных, позволила создать компактный язык с небольшим набором предложений. Язык SQL может использоваться как для выполнения запросов к данным, так и для построения прикладных программ.
Основные категории команд языка SQL предназначены для выполнения различных функций, включая построение объектов базы данных и манипулирование ими, начальную загрузку данных в таблицы, обновление и удаление существующей информации, выполнение запросов к базе данных, управление доступом к ней и ее общее администрирование.
Основные категории команд языка SQL:
DDL – язык определения данных;
DML – язык манипулирования данными;
DQL – язык запросов;
DCL – язык управления данными;
команды администрирования данных;
команды управления транзакциями
Определение структур базы данных (DDL)
Язык определения данных (Data Definition Language, DDL) позволяет создавать и изменять структуру объектов базы данных, например, создавать и удалять таблицы. Основными командами языка DDL являются следующие: CREATE TABLE, ALTER TABLE, DROP TABLE, CREATE INDEX, ALTER INDEX, DROP INDEX.
Манипулирование данными (DML)
Язык манипулирования данными (Data Manipulation Language, DML) используется для манипулирования информацией внутри объектов реляционной базы данных посредством трех основных команд: INSERT, UPDATE, DELETE.
Выборка данных (DQL)
Язык запросов DQL наиболее известен пользователям реляционной базы данных, несмотря на то, что он включает всего одну команду SELECT. Эта команда вместе со своими многочисленными опциями и предложениями используется для формирования запросов к реляционной базе данных.
Язык управления данными (DCL - Data Control Language)
Команды управления данными позволяют управлять доступом к информации, находящейся внутри базы данных. Как правило, они используются для создания объектов, связанных с доступом к данным, а также служат для контроля над распределением привилегий между пользователями. Команды управления данными следующие: GRANT, REVOKE.
Команды администрирования данных
С помощью команд администрирования данных пользователь осуществляет контроль за выполняемыми действиями и анализирует операции базы данных; они также могут оказаться полезными при анализе производительности системы. Не следует путать администрирование данных с администрированием базы данных, которое представляет собой общее управление базой данных и подразумевает использование команд всех уровней.
Команды управления транзакциями
Существуют следующие команды, позволяющие управлять транзакциями базы данных: COMMIT, ROLLBACK, SAVEPOINT, SET TRANSACTION.
6. Преимущества и недостатки языка SQL
6.1 Преимущества
Язык SQL является основой многих СУБД, т.к. отвечает за физическое структурирование и запись данных на диск, а также за чтение данных с диска, позволяет принимать SQL-запросы от других компонентов СУБД и пользовательских приложений. Таким образом, SQL – мощный инструмент, который обеспечивает пользователям, программам и вычислительным системам доступ к информации, содержащейся в реляционных базах данных.
Основные достоинства языка SQL заключаются в следующем: