
Основные функции и особенности работы субд
Как уже отмечалось, СУБД представляет собой совокупность программных и языковых средств, предназначенных для создания, ведения и использования баз данных. Являясь специализированным пакетом прикладных программ, СУБД расширяет возможности ОС в области управления БД. В БнД СУБД является принципиально необходимой частью информационной системы по следующим причинам:
Логическая и физическая организации БД являются нестандартными для операционных систем и языков программирования;
Описание БД и их фрагментов отдельно от прикладных программ и должно создаваться и обрабатываться специальными средствами;
Доступ к данным, включающий вычисление адресов, маршрутизацию в базе данных, локализацию записей, основывается на специальных методах и требует разработки специальных алгоритмов и управляющих программ.
Обработка реляционных баз данных базируется на операциях реляционной алгебры, не предусмотренной в операционных системах и системах программирования;
Специальная обработка БД, такая, как поддержание целостности, непротиворечивости и избыточности данных, не реализована в этих системах.
СУБД берет на себя все указанные операции на каждом из трех этапов жизненного цикла БД – в процессе создания, ведения и использования.
Все функции СУБД можно разделить на три группы: управление базами данных; разработка, отладка и выполнение прикладных программ; выполнение вспомогательных операций (сервис).
В СУБД предусмотрены три уровня управления:
управление файлами, осуществляемое в процессе их генерации и эксплуатации. Основными операциями являются открытие и закрытие, переименование, реорганизация, восстановление баз данных, снятие отчетов по базам данных;
управление записями (кортежами), которое включает чтение, добавление, удаление и упорядочение записей;
управление полями записей (атрибутами).
Такие операции, как ввод данных с клавиатуры, вычисления, организация циклов и ветвлений, вывод данных на экран и принтер не являются сферой деятельности СУБД, а определяются в прикладных программах. Для разработки прикладных программ в СУБД предусматривается специальный язык программирования.
В соответствии с указанным набором функций в СУБД входят программы трех типов: управляющие, обрабатывающие (транслятор) и сервисные. Программы функционально взаимосвязаны и взаимодействуют друг с другом и с операционной системой.
Основным признаком классификации СУБД является логическая модель базы данных. Поэтому различают сетевые, иерархические и реляционные СУБД. К числу наиболее распространенных реляционных СУБД относятся dBASE, FoxBASE, FoxPro, Clipper, Clarion, Paradoxи др.
Языки запросов qbe и sql
Хранимые в БД данные можно просматривать и редактировать с помощью имеющихся в каждой СУБД средств просмотра и редактирования данных в таблицах. Однако для повышения эффективности редактирования и выбора данных из таблиц создаются и выполняются запросы. Запрос представляет собой специальным образом сформированное требование, определяющее состав производимых над БД операций по выборке или модификации хранимых данных.
Для подготовки запросов с помощью различных СУБД используются два основных языка описания запросов:
язык Query By Example (QBE)– язык запросов по образцу;
SQL (Structured Query Language)– структурированный язык запросов.
По возможностям манипулирования данными эти языки практически эквивалентны. Главное отличие между ними заключается в способе формирования запросов: язык QBEпредполагает ручное или визуальное формирование запроса, а использованиеSQLозначает программирование запроса.
Язык QBEпозволяет создавать сложные запросы к БД путем заполнения предлагаемой СУБД запросной формы. Этот способ обеспечивает высокую наглядность и не требует указания алгоритма выполнения операций – достаточно указать образец ожидаемого результата.
При задании запросов с помощью языка QBEдопустимы следующие операции: выборка, вычисление и модификация данных; вставка и удаление записей. Результат выполнения запроса – новая таблица и/или обновленная исходная таблица. Выборка, вставка, удаление и модификация данных и записей могут выполняться с использованием условий, задаваемых с помощью логических выражений. Вычисления над данными задаются с помощью арифметических выражений и порождают в ответных таблицах новые, вычисляемые, поля.
Во многих современных СУБД, например, в AccessиVisual FoxPro, многие действия по подготовке запросов с помощью языкаQBEвыполняются визуально с помощью мыши.
Структурированный язык запросов SQLоснован на реляционном исчислении с переменными кортежами. Язык имеет несколько стандартов, наиболее распространенными являютсяSQL-89иSQL-92.
SQLпредназначен для выполнения операций над таблицами (создание, удаление, изменение структуры) и над данными таблиц (выборка, изменение, добавление и удаление).SQLявляется непроцедурным языком и не содержит имеющихся в обычных языках программирования операторов управления, организации подпрограмм, ввода-вывода. В связи с этимSQLавтономно не используется, а обычно погружен в среду встроенного языка программирования СУБД (например, языкаFoxProСУБД Visual FoxPro).
В современных СУБД с интерактивным интерфейсом можно создавать запросы, не применяя SQL. Однако его применение в некоторых случаях позволяет расширить возможности использования СУБД.