Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ЭКзамен псон / Базами Данных (БД).doc
Скачиваний:
30
Добавлен:
22.06.2014
Размер:
84.99 Кб
Скачать

Краткий обзор языка sql.

SQL–StructuredQueryLanguage. Структурированный язык запросов. Это слабоструктурированный язык программирования, предназначен для выборки и обработки информации, содержащейся в реляционных БД.

SQLявляется слабоструктурированным языком по сравнению с высокоуровневыми языками программирования. ИнструкцииSQLсодержат английские предложения, в которых не все слова влияют на смысл. В нём отсутствуют возможности по организации циклов и операторы сравнения (case,if).

SQLне является СУБД и не распространяется как отдельный программный продукт.

Состав SQL:

  1. Ядро БД является сердцем СУБД и отвечает за физическое структурирование данных, запись и чтение данных на диск. К ядру БД передаются непосредственные инструкции SQLв виде отдельных строк. СтандартSQLобразует однобазовую архитектуру СУБД без подразделения её на различные БД, т.е. все таблицы хранятся в одном файле.

  2. Многобазовая архитектура позволяет хранить различного назначения в отдельных БД.

  3. Каталоговая архитектура, в которой БД организуется как древовидная структура каталогов.

Схема SQLявляется описанием структуры БД с описанием взаимосвязей всех объектов.SQL является «контейнером», содержащим описание следующих объектов БД:

  1. Таблиц и связанных с ними структурами

  2. Представлений – виртуальных таблиц на основе запросов

  3. Доменов – пользовательских типов данных с дополнительными ограничениями

  4. Утверждений, являющихся условием целостности БД

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

  6. Наборов символов, предназначенных для задания правил сортировки пакета

  7. Порядки сортировки, для задания правил сортировки текста

  8. Правила конвертирования текста

Алгоритм взаимодействия СУБД с SQL:

  1. Программа получает доступ к БД путём вызова одной или нескольких API-функций

  2. Для пересылки инструкций SQLв СУБД программа формирует инструкцию в виде текстовой строки и присваивают её в качестве параметраAPI-функции

  3. Программа вызывает API-функции для проверки состояния переданной в СУБД инструкции и обрабатывает ошибки

  4. При организации SQL-запроса программа записывает результат в свои переменные (при одном запросе возвращается 1 строка, либо столбец)

  5. Обращение к БД программа заканчивает вызовом API-функции, отключающей её от СУБД.

Протокол ODBC – Open Data Base Connectivity. Открывает доступ к БД, предназначен для организации универсального программного интерфейса доступа к БД. Реализован в виде отдельного драйвера, учитывающего специфические функции конкретных СУБД.

При вызове функции ODBCинструкцииSQLявляются её аргументами.

ODBCсостоит из 3-х уровней:

  1. Интерфейс вызовов функций – реализован в виде библиотеки .dll

  2. Драйверы ODBC– для организации трансляции стандартных функцийODBCк СУБД

  3. Диспетчер драйверов – обеспечивает загрузку и выгрузку драйверов по запросам приложений

Основные возможности SQL:

  1. Извлечение из БД содержащейся в ней информации.

  2. Изменение БД, т.е. добавление, удаление или обновление данных.

  3. Изменение структуры объектов БД и установление отношений между элементами.

  4. Управление доступом.

  5. Организация совместного использования данных за счёт координации параллельно работающих пользователей.

  6. Обеспечение целостности данных, т.е. защита от разрушения, несогласованных изменений или отказа системы.

В SQLотсутствуют инструкции выбора и организаций переходов. Невозможно создавать циклы.SQLформирует инструкции, которые встраиваются в базовый язык или используются в качестве аргументов специальной функцииAPI–ApplicationProgramInterface. Ядро БД отвечает за физическое структурирование, запись и чтение, аSQLпередаёт ему инструкции.

Достоинства SQL:

  1. Реляционная основа

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

  3. Межплатформенная переносимость

  4. Поддержка официальных информационных стандартов

  5. Поддержка Microsoft в виде ODBC и ADO(Active Data Object)

  6. Интеграция с языком Java(JDBC)

  7. Архитектура клиент-сервер

  8. Объектно-ориентированные технологии

  9. Инструкции SQLвыглядят как обычные английские предложения и облегчают создание интерактивных запросов

  10. Динамическое определение данных

  11. Совместное использование в различных информационных сетях

  12. Стандарты SQLреализованы основными производителями программного обеспечения

  13. Высокоуровневая структура

  14. Доступ к данным в среде Интернет