- •1) Базовые понятия реляционных баз данных.
- •Кортеж, отношение
- •2) Фундаментальные свойства отношений. Отсутствие кортежей-дубликатов
- •Отсутствие упорядоченности кортежей
- •Отсутствие упорядоченности атрибутов
- •Атомарность значений атрибутов
- •3) Теоретические языки запросов.
- •4) Реляционная алгебра.
- •Общая интерпретация реляционных операций:
- •Замкнутость реляционной алгебры и операция переименования
- •Специальные реляционные операции:
- •Операция ограничения
- •Операция взятия проекции
- •Операция соединения отношений
- •Операция деления отношений
- •5) Реляционное исчисление.
- •Кортежные переменные и правильно построенные формулы
- •Целевые списки и выражения реляционного исчисления
- •Реляционное исчисление доменов
- •6) Индексирование.
- •7) Связывание таблиц.
- •8) Контроль целостности связей.
- •1) Общая характеристика субд Access.
- •2) Создание таблиц и ввод данных средствами sql.
- •Определение столбца
- •Определение ограничений целостности таблицы
- •3) Выборка данных средствами sql.
- •Директива from
- •4) Предикаты.
- •Предикат all
- •Предикат distinct
- •Предикат distinctrow
- •Предикат null
- •Операция объединения inner join
- •5) Сложные запросы в sql и поддержка целостности данных. Групповые функции
- •Запросы на выполнение действия
1) Общая характеристика субд Access.
Программа Microsoft Access является реляционной СУБД, которая может функционировать под управлением различных версий Windows и имеет стандартизованный интерфейс приложений Windows.
База данных является основным компонентом проекта приложения Microsoft Access и может включать в свой состав таблицы, формы, запросы, отчёты, макросы и модули.
Таблица – основная единица хранения данных в базе. Понятие таблицы в Microsoft Access полностью соответствует аналогичному понятию реляционной модели данных. Между двумя таблицами можно устанавливать связи типа 1:1 и 1:М. Основными операциями над таблицами являются: просмотр и обновление (ввод, модификация и удаление), сортировка, фильтрация и печать.
Для работы с базами данных в Microsoft Access имеется стандартное окно, однако пользователь может разработать свой интерфейс, основу которого обычно составляют формы. На формах размещаются поля таблиц, поля со списком, кнопки, выключатели, подчинённые формы и т.д. За кнопками обычно закрепляют вызов функций, которые задаются с помощью макросов или программ на Visual Basic for Application – VBA-программ. Обычно предусматривается автоматическое открытие главной кнопочной формы при открытии базы данных. Таким образом,
Форма – объект базы данных Microsoft Access, в котором разработчик размещает элементы управления, принимающие действия пользователей или служащие для ввода, отображения и изменения данных в полях.
Запрос – формализованное требование на отбор данных из таблиц или на выполнение определённых действий с данными. В Microsoft Access можно создавать и выполнять следующие основные типы запросов: на выборку, обновление, удаление, или добавление данных. С помощью запросов можно также создавать новые таблицы, используя данные из одной или нескольких существующих таблиц. Описание запроса можно выполнить с помощью бланка QBE или инструкции языка SQL.
Макрос представляет последовательность макрокоманд встроенного языка Access, задающих автоматическое выполнение некоторых операций, например: "Открыть таблицу", "Найти запись" и др. Для процедур автоматизации рекомендуется использовать программный код VBA.
Модуль – совокупность описаний, инструкций и процедур на языке VBA, сохранённая под общим именем. В Microsoft Access используются модули трёх типов: формы, отчёта и стандартный. Модули форм и отчётов содержат программы, являющиеся локальными для этих объектов. Процедуры из стандартного модуля, если они не описаны явно как локальные для содержащего их модуля, распознаются и могут вызываться процедурами из других модулей в той же базе данных или из адресуемых баз данных.
Текущая открытая БД может взаимодействовать с внешними БД, которые используются как источник таблиц при импорте или присоединении, а также как получатель при экспорте данных из текущей БД. В качестве внешней БД может выступать любая база данных, поддерживающая протокол ODBC, например база данных SQL Server, расположенная на удалённом сервере, или одна из баз данных систем Paradox, dBASE, или Access.
2) Работа с гиперссылками.
самостоятельно
3) Язык запросов по образцу QBE.
самостоятельно
4) Защита БД.
самостоятельно
5) Скрытие объектов БД.
самостоятельно
6) Работа с мультимедиа-данными.
самостоятельно
7) Создание файлов приложений.
самостоятельно
8) Страницы доступа к данным.
самостоятельно
9) Разработка проекта.
самостоятельно
Язык реляционных баз данных SQL.
1) Основные понятия и характеристики SQL.
Язык для взаимодействия с БД SQL появился в середине 70-х и был разработан в рамках проекта экспериментальной реляционной СУБД System R. Исходное название языка SEQUEL (Structured English Query Language) только частично отражает суть этого языка. Язык был ориентирован главным образом на удобную и понятную пользователям формулировку запросов к реляционной БД, но на самом деле уже являлся полным языком БД, содержащим помимо операторов формулирования запросов и манипулирования БД средства определения и манипулирования схемой БД; определения ограничений целостности и триггеров; представлений БД; возможности определения структур физического уровня, поддерживающих эффективное выполнение запросов; авторизации доступа к отношениям и их полям; точек сохранения транзакции и откатов.
Язык SQL представляет собой всемирный стандарт на средства работы с данными. Наличие стандарта обеспечивает унификацию программного обеспечения и его независимость от сервера данных и аппаратной платформы. Язык SQL является непроцедурным языком, с помощью которого программист определяет только требуемый результат, не указывая алгоритм его достижения. В связи с этим SQL автономно не используется, обычно он погружён в среду встроенного языка программирования СУБД (FoxPro в СУБД Visual FoxPro, VBA в СУБД Access).
SQL используется при:
формировании запросов к реляционным БД;
обновлении БД;
управлении БД.
С помощью команд языка SQL-сервер можно:
создавать устройства;
создавать базы данных и таблицы в них;
создавать представления и хранимые процедуры;
редактировать, удалять. добавлять записи в таблицы;
восстанавливать потерянные данные;
добавлять группы пользователей;
управлять доступом к объектам сервера отдельных пользователей и групп.
В современных СУБД с интерактивным интерфейсом можно создавать запросы, используя другие средства, например QBЕ. При формировании QBЕ–запроса в окне конструирования запросов, на заднем плане Access констатирует соответствующий SQL-запрос. А подготовку нового запроса путём редактирования уже имеющегося в ряде случаев проще выполнить путём изменения оператора SQL.
В различных СУБД состав операторов SQL может отличаться.
Язык SQL не обладает функциями полноценного языка разработки, а ориентирован на доступ к данным, поэтому его включают в состав средств разработки программ. В этом случае он называется встроенным SQL. Стандарт языка SQL поддерживают современные реализации языков программирования: Ada, C, Fortran, Pascal и др.
Различают два основных метода использования встроенного SQL: статический и динамический.
При статическом использовании языка (статический SQL) в тексте программы имеются вызовы функций языка SQL, которые жёстко включаются в выполняемый модуль после компиляции.
При динамическом использовании языка (динамический SQL) предполагается динамическое построение вызовов SQL-функций и интерпретация этих вызовов (обычно, когда заранее не известен вид SQL-вызова).
Основное назначение языка SQL – подготовка и выполнение запросов. В результате выборки данных может быть получено множество записей, называемое представлением.
Представление по сути – таблица, формируемая в результате выполнения запроса. Описывается путём указания идентификатора представления и запроса, который должен быть выполнен для его получения.
Курсор – понятие, введённое в язык SQL для удобства работы с представлениями. Представляет собой указатель, используемый для перемещения по наборам записей при их обработке.
Описание и использование курсора в языке SQL:
В описательной части программы
связывание переменной типа курсор (CURSOR) с оператором SQL (обычно с оператором SELECT).
В выполняемой части программы
открытие курсора (OPEN <имя курсора>);
перемещение курсора по записям (FETCH <имя курсора>…), сопровождаемое соответствующей обработкой;
закрытие курсора (CLOSE <имя курсора>).
Объекты SQL
Директивы (например, «кто из клиентов за последние полгода не делал новых заказов?»).
Групповые функции («Сколько клиентов за последние полгода не делал новых заказов?»).
Запросы на выполнение действий («Определить всех клиентов, которые за последние полгода не делали новых заказов, и удалить их из таблицы»).
Основные операторы языка
Операторы языка SQL можно условно разделить на два подъязыка: язык определения данных (Data Definition Language – DDL) и язык манипулирования данными (Data Manipulation Language – DML).
DDL |
DML |
||
Название |
Назначение |
Название |
Назначение |
CREAT TABLE |
создание таблицы |
SELECT |
выборка записей |
DROP TABLE |
удаление таблицы |
UPDATE |
изменение записей |
ALTER TABLE |
изменение структуры таблицы |
INSERT |
вставка новых записей |
CREATE INDEX |
создание индекса |
DELETE |
удаление записей |
DROP INDEX |
удаление индекса |
|
|
CREATE VIEW |
создание представлений |
||
DROP VIEW |
удаление представлений |
||
