Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
5.Базы данных.doc
Скачиваний:
1
Добавлен:
17.11.2019
Размер:
365.57 Кб
Скачать

Языки запросов sql и qbe

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

Доступ к данным осуществляется в виде запросов к базе данных.

Главная задача БнД - это формирование информации из БД по запросам пользователей.

Запрос – обращение к БД с посредством языка запросов, являющегося подмножеством языком манипулирования данных (ЯМД) выбранной СУБД, с целью получения в требуемой форме конкретной совокупности данных о состоянии предметной области на определен­ный момент времени.

Операции по реализации запросов выполняются на основе языка манипулирования данными (ЯМД СУБД).

При выборе данных из БД возможно использование различных критериев:

  • по логической позиции данных;

  • по значениям данных;

  • по взаимосвязям данных.

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

Язык запросов sql

Язык структурированных запросов SQL (Structured Query Language) появился как результат исследовательского проекта System R фирмы IBM. Первоначально он назывался SEQUEL (Structured English Query Language, английский язык структурированных запросов). Первой компанией выпустившей коммерческую реализацию этого языка была компания Лари Эллисона (Larry Ellison) Oracle, на сегодняшний день являющаяся крупнейшим лидером на рынке систем управления базами данных.

Язык SQL - является непроцедурным языком, т.е. SQL не является языком программирования в традиционном представлении. На нем пишутся не программы, а запросы к базе данных, SQL - дек­ларативный язык. Это означает, что с его помощью можно сформули­ровать "что нужно сделать", но нельзя определить "как это сделать". Это соответствует представлению СУБД в виде черного ящика, содержимое которого пользователя не интересует, а интересует только получение правильного ответа на свои вопросы.

Язык SQL, кроме того, что может извлекать данные из таблиц реляционных баз данных, позволяет также (перечислены только некоторые наиболее важные возможности):

  • манипулировать таблицами (создавать, изменять, удалять);

  • обновлять данные в таблицах (изменять, удалять);

  • определять права доступа.

Замечание. Важно понимать, что SQL - это не база данных и не СУБД, а средство работы с ними. Практически все СУБД имеют в своем составе средства для работы с ними посредством SQL.

В частности, в отличие от процедурных языков программи­рования (СИ, Паскаль, Ада), в языке SQL- отсутствуют такие операто­ры, как if/then/else, for, while, break, continue и т.д.

Следовательно, лю­бое действие над базой данных (последовательность операторов на языке SQL) должно быть выполнено целиком или не выполняться во­все. Такое действие получило название транзакции. Лозунг транзакции – «Все или ничего».

Обработка транзакций опирается на журнал транзакций. В него заносится информация о каждой транзакции к базе данных. Она ис­пользуется для отката транзакций и восстановления состояния базы данных. На языке запросов нельзя написать сколько-нибудь сложную прикладную программу, которая работает с базой данных.

Для этой цели в современных СУБД используется язык четвертого поколения (Forth Generation Language - 4 GL), обладающий как основными воз­можностями процедурных языков третьего поколения (3GL), таких, как СИ, Паскаль, Ада, так и возможностью встроить в текст програм­мы операторы SQL, и средствами управления интерфейсом пользова­теля (меню, формами, вводом пользователя и т.д.) Сегодня язык 4GL - это один из фактических стандартов средств разработки приложе­ний, работающий с базами данных.

ТРАНЗАКЦИЯ

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

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

Замечание. Язык SQL - не единственный язык работы с базами данных. Были и другие языки, но SQL оказался настолько удобным, что практически сразу стал стандартом де-факто реляционного языка данных.