
- •Создание базы данных «Домашняя библиотека»
- •Ягту 220301.65-016 лр
- •Оглавление Содержание:
- •1 Разработка структуры бд
- •1.1 Уточнение задач
- •1.2 Сущности
- •1.3 Нормализация Приведение к 1нф: Первая нормальная форма требует:
- •Приведение ко 2 нф:
- •Приведение к 3нф:
- •1.4 Проектирование таблиц
- •2. Реализация серверной части.
- •2.1 Создание таблиц.
- •2.2 Команды
- •3. Реализация клиентской части.
- •3.1 Проектирование интерфейса пользователя.
- •3.2 Проектирование отдельных графических форм.
- •3.3 Разработка алгоритмов.
- •3.4 Разработка структуры sql-запросов.
3.3 Разработка алгоритмов.
Алгоритм для
главной формы.
Алгоритм для формы “Список книг”
Алгоритм для формы “Список пользователей”
Алгоритм для формы “Список выданных книг”
Алгоритм для формы “Список возвращенных книг”
Алгоритм для формы “Поиск книги”
Алгоритм для формы “Поиск пользователя”
Алгоритм для формы “Внести пользователя”
Алгоритм для формы “Внести книгу”
3.4 Разработка структуры sql-запросов.
Параметры, указанные в угловых скобках, должны вводиться пользователем.
1) Удаление информации с формы “Список книг”
DELETE FROM knigi_bav
WHERE nazvanie=<’название книги из выделенной строки’>;
2) Удаление информации с формы “Список пользователей” из таблицы Пользователи.
DELETE FROM polzovatel_bav
WHERE (FIO=<’Фамилия Имя Отчество из выделенной строки’>);
3) Удаление информации с формы “Список пользователей” из таблицы Книги
DELETE FROM knigi_bav
WHERE nazvanie=<’название книги из выделенной строки’>;
4) Поиск книги с формы “Поиск книги”.
SELECT nazvanie, janr, razdel, podrazdel, avtor FROM knigi_bav
WHERE (nazvanie=<’название’>) OR (janr=<’жанр’>) OR (razdel=<’раздел’>) OR (podrazdel=<’подраздел’>) OR (avtor=<’автор’>);
5) Поиск пользователя с формы “Поиск пользователя”
SELECT fio FROM polzovatel_bav
WHERE (FIO=<Фамилия Имя Отчество>);
6) Вывод списка возвращенных книг.
SELECT polzovatel_bav.FIO, knigi_bav.nazvanie knigi
FROM polzovatel_bav, knigi_bav
WHERE (polzovatel_bav.srok_vozvrata< <’сегодняшнее число’>) AND (polzovatel_bav.kod_knigi=knigi_bav.kod_knigi);
7) Вывод списка книг пользователя на форме “Список пользователей”.
SELECT knigi_bav.nazvanie, polzovatel_bav.data_vidachi, polzovatel_bav.srok_vozvrata
FROM knigi_bav, polzovatel_bav, polzovatel_bav;
WHERE (polzovatel_bav.FIO=<’Фамилия Имя Отчество в выделенной строке’>) AND (polzovatel_bav.kod_knigi=knigi_bav.kod_knigi);
8) Вывод списка пользователей на форме “Список пользователей”.
SELECT polzovatel_bav.FIO, polzovatel_knigi_bav.adress
FROM polzovatel_bav, polzovatel_knigi_bav;
9) Вывод списка книг на форме “Список книг”.
SELECT knigi_bav.nazvanie_knigi, knigi_bav.izdatelstvo, knigi_bav.god_izdaniya, knigi_bav.janr, mesto_vidachi.nazvanie, razdel_bav.razdel, razdel_bav.podrazdel
FROM knigi_bav, knigi_bav, knigi_bav, knigi_bav, mesto_vidachi, razdel_bav, razdel_bav;
WHERE (knigi_bav.kod_mesta_vidachi=mesto_vidachi_bav.kod_mesta_vidachi) AND (knigi_bav.razdel=razdel_bav.razdel);
10) Вывод списка авторов книги выделенной строки на форме “Список книг”
SELECT avtor FROM avtor_bav WHERE (avtor_bav.kod_knigi=knigi_bav.kod_knigi);
11) Вывод списка пользователей книги выделенной строки на форме “Список книг”
SELECT fio FROM fio_bav WHERE (fio_bav.kod_knigi= knigi_bav.kod_knigi);
12) Удаление книги из таблицы на форме “Список возвращенных книг”
DELETE FROM polzovatel _bav;
13) Вывод списка выданных книг на форме “Список выданных книг”
SELECT knigi_bav.nazvanie, polzovatel_bav.fio, polzovatel_bav.data_vidachi, polzovatel_bav.srok_vozvrata
FROM knigi_bav, polzovatel_bav, polzovatel_bav, polzovatel_bav
WHERE (polzovatel_bav.srok_vozvrata>= <’текущая дата’>) AND (knigi_bav.kod_knigi=polzovatel_bav.kod_knigi);
14) Удаление книги из списка выданных книг
DELETE FROM polzovatel _bav;
15)Выдача книги
INSERT INTO polzovatel_knigi_bav(polzovatel), polzovatel_bav.(fio, data_vidachi, srok_vozvrata)
VALUES (<’название'>, <’Фамилия Имя Отчество’>, <’дата выдачи’>, <’срок возврата’>) ;
16) Внесение пользователя
INSERT INTO polzovatel_bav(fio), adress_bav(adress)
VALUES (<‘Фамилия Имя Отчество’> , <’Адрес’> );
17) Внесение книги
INSERT INTO knigi_bav(nazvanie, izdatelstvo, god_izdaniya, janr), razdel_bav(razdel, podrazdel), avtor_bav(avtor); polzovatel_knigi_bav(polzovatel)
VALUES ( <’название’>, <’издательство’>, <’год издания’>, <’жанр’>, <’раздел’>, <’подраздел’>, <’автор’>, <’пользователь’>,);