Информатика: конспект лекций.

11.5. Языки доступа к базам данных.

Выделяют два типа языков доступа к базам данных:

1) язык описания данных – высокоуровневый язык, предназначенный для описания логической структуры данных;

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

Самыми распространенными языками доступа являются два стандартизированных языка:

1) QВЕ (Quеrу bу Ехаmрlе) – язык запросов по образцу, характеризующийся свойствами языка манипулирования данными;

2) SQL (Struсturеd Quеrу Lаnguаgе) – структурированный язык запросов, состоящий из свойств языков обоих типов.

Язык QВЕ был разработан на основе реляционного исчисления с переменными-доменами. Он помогает формировать сложные запросы к базе данных с применением заполнения предлагаемой системой управления базой данных запросной формы. Любая из реляционных СУБД обладает своим вариантом языка QВЕ. Достоинствами подобного способа задания запросов к БД являются:

1) высокая наглядность;

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

Структурированный язык запросов SQL появился на основе реляционного исчисления с переменными кортежами. Было разработано несколько стандартов данного языка, самыми известными из которых являются SQL-89 и SQL-92. Язык SQL применяется для выполнения операций над таблицами и данными, которые содержатся в этих таблицах, и некоторых сопутствующих операций. Он не применяется как отдельный язык и чаще всего служит частью встроенного языка программирования СУБД (например, FохРrо СУБД Visuаl FохРrо, ОbjесtРАL СУБД Раrаdох, Visuаl Ваsiс fоr Аррliсаtiоns СУБД Ассеss).

Язык SQL ориентирован только на доступ к данным, поэтому его относят к средствам разработки программ и называют встроенным. Выделяют два основных метода использования встроенного SQL:

1) статический – характеризуется тем, что в текст программы помещены вызовы функций языка SQL, жестко включаемые в выполняемый модуль после компиляции. Изменения в вызываемых функциях могут производиться на уровне отдельных параметров вызовов с помощью переменных языка программирования;

2) динамический – отличается динамическим построением вызовов SQL-функций и интерпретацией этих вызовов при выполнении программы. Чаще всего применяется в тех случаях, когда в приложении вид SQL-вызова заранее неизвестен, и он выстраивается в диалоге с пользователем.