Вы находитесь на странице: 1из 28

Базы данных

• База данных (БД) – это хранилище данных о


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

Функции СУБД
 создавать базы данных
 поиск информации в БД
 выполнение несложных расчетов
 вывод отчетов на печать
 редактирование БД

! Информационная система = БД + СУБД!


Типы баз данных
 табличные БД
данные в виде одной таблицы
 сетевые БД
набор узлов, в котором каждый может быть
связан с каждым.
 иерархические БД
в виде многоуровневой структуры
 реляционные БД (99,9%)
набор взаимосвязанных таблиц
Табличные БД
Модель – картотека
Примеры: Петров Вася
• записная книжка Суворовский пр., д. 32, кв. 11
275-75-75
• каталог в библиотеке

поля
записи
Фамилия Имя Адрес Телефон

Петров Вася Суворовский пр., д. 32, кв. 275-75-75


11
Иванов Дим Кирочная ул., д.25, кв.12 276-76-76
а

самая простая структура


во многих случаях – дублирование данных:
А.С. Пушкин Сказка о царе Салтане 20 стр.
А.С. Пушкин Сказка о золотом петушке 12 стр.
Сетевые БД
Сетевая БД – это набор узлов, в которых каждый может
быть связан с каждым (схема дорог).
Старые Васюки Средние Васюки
А
Г Б
Васюки В
Новые Васюки

 лучше всего отражает структуру некоторых


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

Мои Мой Сетевое


документы компьютер окружение

Моя Мои Мои A: С: D: Учебники Задания Рисунки


музыка рисунки видеозаписи
Иерархические БД
Прайс-лист:
Продавец Иван
(уровень 1)

Товар Мониторы Принтеры


(уровень 2)

Изготовитель Sony Phillips Samsung


(уровень 3)

Модель S93 X93B


(уровень 4)

Цена $306 $312


(уровень 5)
Иерархические БД
Приведение к табличной форме:

Продавец Товар Изготовитель Модель Цена

Иван Монитор Sony S93 $306


Иван Монитор Sony X93B $312
Иван Монитор Phillips 190 B5 CG $318
Иван Монитор Samsung SyncMaster $452
193P

 дублирование данных
 при изменении значения поля (например, адреса
фирмы) надо менять его во всех строках
 нет защиты от ошибок ввода оператора
(Phillips-Philips) - лучше было бы выбирать из
списка
Реляционные БД
Реляционная база данных – это набор простых таблиц,
разбитых на строки и столбцы, на пересечении которых
находятся данные, между которыми установлены связи
(отношения) с помощью числовых кодов.

Сводная ведомость
Студенты
Дисциплина Студент Оценка Дата сдачи
Фамилия Год Группа
Информатика 1 зачет 24.12.2009 рожд
Математика 2 Отл. 16.12.2009 Алферова 1990 103
Математика 3 зачет 29.06.2010 Маркелов 1991 103
Информатика 4 Хор. 2.07.2010 Сафина 1989 103

Преподаватели
Фамилия Предмет
Данчул Математика
Павлов Информатика
Сафонова Математика
Запись – строка таблицы, описывает один экземпляр из множества
объектов.
Поле – столбец таблицы, содержит свойство (атрибут) объекта.
Каждое поле имеет имя, тип (символьный, числовой, дата, и др.)
и значение.

Записи (строки) Поля (столбцы). В полях хранятся различные типы данных

Сотрудники Отдел Комната Телефон


Иванов С.М. Маркетинг 21 45-43
Кузнецова Л.И. Доставка 13 21-56
Васин Г.Н. Бухгалтерия 43 37-33
Яковлева Н.К. Бухгалтерия 42 37-48
Иванов П.В. Маркетинг 21 45-47
Суханова О.А. Канцелярия 10 01-12
Аристова Т.Е. Бухгалтерия 43 37-33
Главный (первичный) ключ
В каждой таблице выделяется ключевое поле .
Главный (первичный) ключ – это поле (или комбинация полей),
которое однозначно определяет запись. Очень часто в качестве
ключа берут просто порядковый номер.
В таблице не может быть двух записей с одинаковым значением
ключа.

Могут ли эти данные быть ключом?


• фамилия
• имя
• номер паспорта
• номер дома
• регистрационный номер автомобиля
• город проживания
• дата выполнения работы
Связи между таблицами
Один к одному («1-1») – одной записи в первой таблице
соответствует ровно одна запись во второй.

Применение: выделение часто используемых данных.

1 1
Код Фамилия Имя Код Год Адрес
Кузьма рожд.
1 Иванов
1 1992 Суворовский, д.20, кв. 6
2 Петров Василий
… 2 1993 Кирочная, д. 30, кв 18

Связи между таблицами

Один ко многим («1- ») – одной записи в первой


таблице соответствует сколько угодно записей во
второй.

1 
Код Название Код Код Цена
товара товара
1 Монитор 123 1 10 999
2 Винчестер 345 1 11 999
… …

товары прайс-лист
Связи между таблицами
Многие ко многим (« - ») – одной записи в
первой таблице соответствует сколько угодно предметы
записей во второй, и наоборот.
учителя Код Название
Код Фамилия   1 История
1 Иванов
2 География
2 Петров
3 Биология

Реализация – через третью таблицу и две связи «1-».


1   1
Код Фамилия Код Код Код Название
Код учителя предмета
Класс
1 Иванов 1 История
1 1 1 9-А
2 Петров География
2 1 2 8-Б 2

3 2 3 7-В 3 Биология
расписание …

Связи между таблицами
Связь таблиц выполняется через общие поля. При
этом одна таблица называется главной (та, что на
стороне 1), а вторая подчиненной (та, что на стороне
) .
Вторичный
ключ
Главная Подчиненная
1 
Код Название Код Код Цена
товара товара
1 Монитор 123 1 10 999
2 Винчестер 345 1 11 999
… …
Код связи в подчиненной таблице называется
вторичным ключом.
Реляционные БД
 нет дублирования информации;
 Изменения вносятся только в одну таблицу (при
изменении адреса фирмы достаточно изменить
его только в таблице Продавцы);
 защита от неправильного ввода (можно выбрать
только фирму, которая есть в таблице
Продавцы);

 сложность структуры (не более 40-50 таблиц);


 при поиске надо обращаться к нескольким
таблицам;
 нужно поддерживать целостность (при удалении
фирмы-продавца надо автоматически удалять все
связанные записи - каскадное удаление).
MS Access– это система
управления реляционными
базами данных
MS Access работает со следующими объектами:

Таблицами;
Формами;
Запросами;
Отчетами;
Макросами;
Модулями.

Все объекты содержатся в одном файле с


расширением *. accdb
Интерфейс СУБД ACCESS 2007-2010
Вкладки для выбора Панель инструментов при работе с
режима работы вкладкой «Работа с таблицами»

Вкладки для работы


с различными
объектами

Поле для просмотра,


редактирования и создания
объекта

Область
навигации –
список
объектов Строка в таблице -
кортеж
Объекты базы данных Access
ФОРМА. Этот объект предназначен для ввода
и вывода данных, а также для управления ОТЧЕТЫ - это объект БД,
работой приложения. Внешний вид данных, предназначенный для
Отчеты
извлекаемых из таблиц или запросов, Формы вычисления,
форматирования,
определяется формами. С помощью форм печати и обобщения выбранных
можно запускать макросы или процедуры данных. Отчет можно
Visual Basic. просматривать на экране
МАКРОС. Этот объект представляет
собой структурированное описание Таблицы
Таблицы ЗАПРОС. Это объект,
Макросы Таблицы Запросы
одного или нескольких действий, обеспечивающий настраиваемый
которые необходимо выполнить в вывод данных из одной или
качестве реакции на определенные нескольких таблиц. Имеется
события. возможность создавать запросы на
выборку, обновление, вставку и
удаление данных.
МОДУЛЬ. Модули
Это объект, содержащий
пользовательские процедуры, написанные на СТРАНИЦЫ.
Страницы Объекты БД, которые
языке Visual Basic. Модули обеспечивают позволяют публиковать данные на веб-
выполнение функций из любого места страницах в корпоративной сети
приложения, или могут быть связаны с организации.
конкретной формой.
Таблицы в MS Access
Таблица является базовым объектом.
Вся информация находится именно в таблицах.
Все остальные объекты – производные, и
являются правилами, по которым преобразуется
информация из таблиц.

Любая таблица может быть представлена в двух видах:


 В режиме конструктора. В этом режиме для каждого поля
указывается название, тип и выбирается ключевое поле.
 В оперативном режиме. В этом режиме выполняется
ввод, редактирование и просмотр записей таблицы.
Таблица – базовый объект в Access

ТАБЛИЦА - это объект, используемый для непосредственного


хранения данных. Каждая таблица содержит сведения об
определенном предмете.

Записи (строки) Поля (столбцы). В полях хранятся различные типы данных

Сотрудники Отдел Комната Телефон


Иванов С.М. Маркетинг 21 45-43
Кузнецова Л.И. Доставка 13 21-56
Васин Г.Н. Бухгалтерия 43 37-33
Яковлева Н.К. Бухгалтерия 42 37-48
Иванов П.В. Маркетинг 21 45-47
Суханова О.А. Канцелярия 10 01-12
Аристова Т.Е. Бухгалтерия 43 37-33
В таблицах отображаются сущности –
множества абстрактных или реальных
объектов, обладающих общими
характеристиками (атрибутами и связями).

В записях отображаются экземпляры


сущности.
В полях отображаются атрибуты сущности.
В ячейках – значения атрибутов экземпляров
сущности.
Режимы создания таблиц в СУБД Access

Режим
Конструктор

Режим -
Таблица
Характеристика типов данных БД Access
Составив список полей для всех таблиц, необходимо выбрать тип
данных для каждого поля.

Тип данных — это свойство, определяющее, что можно ввести в


поле, а что — нет.
Тип данных Использование Размер
Текстовый (Text) Алфавитно-цифровые данные До 255 байт
Поле МЕМО (Memo) Абзацы, тексты, предложения, таблицы Не более 65535
кодировок с символами символов
Числовой (Number) Определяет вид числа целое или с 8 /16 байт
десятичной точкой после запятой
Дата/время (Date/time) Используется для хранения календарных дат 8 байт
или значений времени
Счетчик (AutoNumber) Специально предназначен для 4 байта
автоматической генерации первичного ключа
Поле объекта OLE (Ole Позволяет хранить такие сложные данные, как До 2 Гбайт
Object) рисунки, звуковые файлы, диаграммы
Логический (Boolean) Используется для хранения значений вида 1 бит
«истина/ложь»
Контроль данных при вводе в базу данных
Маска ввода
В Access существует возможность ввода данных в определённом
формате. Для этого соответствующему полю необходимо задать маску
ввода, определяющую формат вводимой информации. Существует
перечень специальных символов для определения маски ввода,
применение которых, во многом упрощает работу пользователя при
вводе информации в таблицы или при создании запросов на поиск
необходимых сведений в базе данных.
Символ
Описание
маски
В данную позицию должна быть введена цифра. Знаки плюс (+) и минус (-) не
0
допускаются
В данную позицию должна быть введена цифра или пробел. Знаки плюс (+) и минус
9
(-) не допускаются
# В данную позицию должна быть введена цифра, пробел, знаки плюс (+) или минус (-)
L В данную позицию должна быть введена буква
? В данную позицию может быть введена буква или пробел
A В данную позицию должна быть введена буква или цифра
a В данную позицию должна быть введена буква, цифра или пробел
& В данную позицию должен быть введен произвольный символ или пробел
Примеры.

МАСКА ВВОДА ВВОД ЗНАЧЕНИЯ ПРИМЕЧАНИЯ

(000) 000-0000 (206) 555-0199 Пользователи должны


вводить код города
(999) 000-0000 (206) 555-0199 Междугородные коды
необязательны
( ) 555-0199
#999 -20 Число, включающее не
более четырех знаков и
2000 не имеющее
разделителей
>L<?????????????? Мария Имя или фамилия, первая
буква которой
Вадим автоматически вводится
заглавной
Планирование первичных ключей
Правило:
каждая таблица в
базе данных должна
содержать
первичный ключ.

Первичные ключи используются для:


 идентификации записей в базе данных,
 создания связей между таблицами.
Простейший способ создания ключа - использование в
каждой из таблиц поля «Код» с типом данных «Счетчик».
При каждом добавлении в таблицу новой записи значение в этом
поле увеличивается на единицу.
Внешние ключи
Внешний ключ — это обычный первичный ключ,
который используется в другой таблице.
Например, первичные
ключи из таблиц
«Поставщики» и
«Поддержка» стали
полями в таблице
«Активы».

Эти дублирующиеся поля


в таблице «Активы»
являются внешними
ключами.

Вам также может понравиться