Создание трёх баз данных на Microsoft Access, My SQL и SQLite

Заказать уникальную курсовую работу
Тип работы: Курсовая работа
Предмет: Проектирование баз данных
  • 47 47 страниц
  • 10 + 10 источников
  • Добавлена 08.02.2022
1 496 руб.
  • Содержание
  • Часть работы
  • Список литературы
  • Вопросы/Ответы

Введение 12
1 Microsoft Access 13
1.1 Краткое описание 13
1.2 Создание БД и таблиц 16
1.3 Создание связей между таблицами 18
1.4 Ввод данных в таблицы 20
1.5 Удаление данных 20
2 My SQL 26
2.1 Краткое описание 26
2.2 Создание БД и таблиц 27
2.3 Создание связей между таблицами 28
2.4 Ввод данных в таблицы 29
2.5 Удаление данных (триггер) 31
3 SQLLite 37
3.1 Краткое описание 37
3.2 Создание БД и таблиц 37
3.3 Создание связей между таблицами 39
3.4 Ввод данных в таблицы 40
3.5 Удаление данных (триггер) 42
Заключение 46
Список литературы 47

Фрагмент для ознакомления

Таблицы связаны определенными отношениями, делающими возможным объединить данные из нескольких таблиц в одном запросе. SQL-часть MySQLориентирована на StructuredQueryLanguage, наиболее общий стандартизированный язык, используемый, чтобы обратиться к компьютерным базам данных.MySQL является Open Source Software.OpenSource означает, что тексты открыты для чтения и правки всем желающим. Любой может скачать MySQL из Internet и использовать его совершенно бесплатно. Любой желающий может изучать исходный текст и изменять его по своему усмотрению. MySQL используетлицензию GPL (GNU General Public License) http://www.gnu.org.MySQL очень быстр, надежен и легок в использовании. MySQL также имеет очень практичный набор свойств, разработанных в очень близком сотрудничестве с пользователями. MySQL был первоначально разработан, чтобы обработать очень большие базы данных намного быстрее, чем существующие решения, и успешно использовался в высокотребовательных промышленных средах в течение нескольких лет. При постоянной разработке MySQL сегодня предлагает богатый и очень полезный набор функций. Связность, быстродействие и защита делают MySQL очень подходящим для обращения к базам данных из Internet.2.2 СозданиеБДитаблицCREATE DATABASE KokorinDB;USE KokorinDB;CREATE TABLE KokorinGroups(KokorinIdINT(10) AUTO_INCREMENT,KokorinGroupVARCHAR(20) NOT NULL, PRIMARY KEY (KokorinId));CREATE TABLE KokorinStudents(KokorinIdINT(10) AUTO_INCREMENT,KokorinStudentVARCHAR(100) NOT NULL,KokorinGroupIdINT(10) NOT NULL,KokorinPhoneVARCHAR(20) NOT NULL, PRIMARY KEY (KokorinId));CREATE TABLE KokorinTeachers(KokorinIdINT(10) AUTO_INCREMENT,FirstNameVARCHAR(20) NOT NULL,LastNameVARCHAR(20) NOT NULL, Patronymic VARCHAR(20) NOT NULL,KokorinPhoneVARCHAR(20) NOT NULL,KokorinEducationINT(10) NOT NULL, PRIMARY KEY (KokorinId));CREATE TABLE KokorinSubjects(KokorinIdINT(10) AUTO_INCREMENT,KokorinSubjectVARCHAR(100) NOT NULL,KokorinTeachersIdINT(10) NOT NULL,KokorinPriseDOUBLE(20,2) NOT NULL, PRIMARY KEY (KokorinId));CREATE TABLE KokorinTimetable(KokorinIdINT(10) AUTO_INCREMENT,KokorinDate DATETIME NOT NULL,KokorinSubjectIdINT(10) NOT NULL,KokorinCountINT(10) NOT NULL,KokorinGroupIdINT(10) NOT NULL, PRIMARYKEY (KokorinId));2.3 Создание связей между таблицамиUSEKokorinDB;ALTER TABLE KokorinStudents ADD FOREIGN KEY (KokorinGroupId) REFERENCES KokorinGroups (KokorinId) ON DELETE RESTRICT ON UPDATE RESTRICT ;ALTER TABLE KokorinSubjects ADD FOREIGN KEY (KokorinTeachersId) REFERENCES KokorinTeachers (KokorinId) ON DELETE RESTRICT ON UPDATE RESTRICT ;ALTER TABLE KokorinTimetable ADD FOREIGN KEY (KokorinSubjectId) REFERENCES KokorinSubjects (KokorinId) ON DELETE RESTRICT ON UPDATE RESTRICT ;ALTER TABLE KokorinTimetable ADD FOREIGN KEY (KokorinGroupId) REFERENCES KokorinGroups (KokorinId) ON DELETE RESTRICT ON UPDATE RESTRICT ;2.4 Ввод данных в таблицыUSEKokorinDB;INSERT KokorinGroups(KokorinGroup) VALUES('ГруппаА'),('Группа Б'),('Группа В'),('Группа Г'),('ГруппаД');INSERT KokorinStudents(KokorinStudent, KokorinGroupId, KokorinPhone) VALUES('Петров С.С.', 1, '+7(302)123-89-96'),('Петрова А.С.', 1, '+7(302)123-89-98'),('Астахова Н.Ф.', 2, '+7(302)123-89-99'),('Маслова А.А.', 2, '+7(302)123-22-96'),('Матюхин Е.Н.', 3, '+7(828)123-89-96'),('Белов Г.Ю.', 3, '+7(689)123-89-96'),('Белов Б.Ю.', 4, '+7(111)123-89-96'),('Синицына М.М.', 4, '+7(302)745-89-96'),('Симонов А.Г.', 5, '+7(302)123-12-96'),('Тусков М.В.', 5, '+7(302)123-39-96');INSERT KokorinTeachers(FirstName, LastName, Patronymic, KokorinPhone, KokorinEducation) VALUES('Махно', 'Сергей', 'Олегович', '23-56-89', 'МГИМО'),('Манаков', 'Семен', 'Петрович', '223-56-88', 'ЮФУ'),('Усова', 'Елена', 'Юрьевна', '23-56-10', 'МИФИ'),('Петренко', 'Екатерина', 'Андреевна', '23-56-12', 'СФГА'),('Столбикова', 'Наталья', 'Алексеевна', '23-56-66', 'ДГТУ');INSERT KokorinSubjects(KokorinSubject, KokorinTeachersId, KokorinPrise) VALUES ('Физика', 1, 300),('Высшая математика', 2, 300),('Литература', 3, 200),('Культурология', 4, 250),('Физкультура', 5, 150);INSERT KokorinTimetable(KokorinDate, KokorinSubjectId, KokorinCount, KokorinGroupId) VALUES ('2021-12-01 08:00', 1, 2, 1),('2021-12-01 08:30', 2, 2, 2),('2021-12-01 09:00', 5, 1, 3),('2021-12-02 08:00', 2, 2, 1),('2021-12-02 08:30', 3, 2, 2),('2021-12-02 09:00', 5, 2, 4),('2021-12-03 08:00', 3, 3, 5),('2021-12-03 08:30', 4, 2, 4),('2021-12-03 09:00', 1, 1, 3),('2021-12-04 08:00', 4, 2, 1);2.5 Удаление данных (триггер)DROP TRIGGER IF EXISTS delete_KokorinGroups_row;DELIMITER //CREATE TRIGGER delete_KokorinGroups_rowBEFORE DELETEON KokorinGroupsFOR EACH ROWIF OLD.KokorinId in (select KokorinGroupId from kokorinstudents) or OLD.KokorinId in (select KokorinGroupId from kokorintimetable) THENdelete from KokorinStudents where KokorinGroupId = OLD.KokorinId;delete from KokorinTimetable where KokorinGroupId = OLD.KokorinId;END IF//DELIMITER ;delete from KokorinGroups where KokorinId = 5Созданная БД представлена на рисунках 7-13.Рисунок 7 – Созданная БДРисунок 8 – Созданная БДРисунок 9 – Созданная БДРисунок 10 – Созданная БДРисунок 11 – Созданная БДРисунок 12 – Созданная БДРисунок 13 – Созданная БД3 SQLLite3.1 Краткое описаниеSQLite – это библиотека на языке C, которая реализует небольшой, быстрый, автономный, высоконадежный, полнофункциональный механизм базы данных SQL. SQLite – это наиболее часто используемый механизм баз данных в мире. SQLite встроен во все мобильные телефоны и большинство компьютеров и входит в состав множества других приложений, которые люди используют каждый день. Формат файла SQLite является стабильным, кроссплатформенным и обратно совместимым, и разработчики обещают сохранить его в таком виде до 2050 года. Файлы базы данных SQLite обычно используются в качестве контейнеров для передачи богатого контента между системами и в качестве формата долгосрочного архивирования данных. Активно используется более 1 триллиона (1e12) баз данных SQLite.Исходный код SQLite находится в открытом доступе и может быть использован любым желающим для любых целей.3.2 СозданиеБДитаблицCREATE DATABASE KokorinDB;USE KokorinDB;CREATE TABLE KokorinGroups(KokorinIdINT(10) primary key,KokorinGroupVARCHAR(20) NOT NULL);CREATE TABLE KokorinStudents(KokorinIdINT(10) primary key,KokorinStudentVARCHAR(100) NOT NULL,KokorinGroupIdINT(10) NOT NULL,KokorinPhoneVARCHAR(20) NOT NULL, FOREIGN KEY (KokorinGroupId) REFERENCES KokorinGroups (KokorinId) );CREATE TABLE KokorinTeachers(KokorinIdINT(10) primary key,FirstNameVARCHAR(20) NOT NULL,LastNameVARCHAR(20) NOT NULL, Patronymic VARCHAR(20) NOT NULL,KokorinPhoneVARCHAR(20) NOT NULL,KokorinEducationVARCHAR(200) NOT NULL);CREATE TABLE KokorinSubjects(KokorinIdINT(10) primary key,KokorinSubjectVARCHAR(100) NOT NULL,KokorinTeachersIdINT(10) NOT NULL,KokorinPriseDOUBLE(20,2) NOT NULL, FOREIGN KEY (KokorinTeachersId) REFERENCES KokorinTeachers (KokorinId) );CREATE TABLE KokorinTimetable(KokorinIdINT(10) primary key,KokorinDate DATETIME NOT NULL,KokorinSubjectIdINT(10) NOT NULL,KokorinCountINT(10) NOT NULL,KokorinGroupIdINT(10) NOT NULL, FOREIGN KEY (KokorinSubjectId) REFERENCES KokorinSubjects (KokorinId) , FOREIGN KEY (KokorinGroupId) REFERENCES KokorinGroups (KokorinId) );3.3 Создание связей между таблицамиPRAGMA foreign_keys=on;Во-первых, в SQLite3 по умолчанию отключена поддержка внешних ключей, команда PRAGMA позволяет включить внешние ключи в базах данных SQLite. Во-вторых, помимо внешнего ключа таблицы имеют ограничения уровня столбца. Третье, столбец, который ссылается и столбец, на который ссылается, должны иметь одинаковый тип данных, это закон реляционных баз данных.Если столбцы будут иметь разные типы данных, внешний ключ не будет работать. Скорее всего, другие СУБД вам даже не дадут возможность создать такой внешний ключ, но SQLite имеет динамическую типизацию данных, поэтому внешний ключ будет создан.Конструкция FOREIGEN KEY REFERENCE организует связь между таблицами базы данных, а также то, что внешний ключ очень тесно связан с понятием нормализации данных в базе данных. FOREIGEN KEY – это ограничения, которые заставляют SQLite проверять выполнение набора определенных правил, которые позволяют избежать аномалии модификации, удаления и обновления данных в таблицах базах данных.Создавать связи необходимо при создании самих таблиц в конструкции CREATETABLE.CREATE TABLE KokorinTimetable(KokorinIdINT(10) primary key,KokorinDate DATETIME NOT NULL,KokorinSubjectIdINT(10) NOT NULL,KokorinCountINT(10) NOT NULL,KokorinGroupIdINT(10) NOT NULL, FOREIGN KEY (KokorinSubjectId) REFERENCES KokorinSubjects (KokorinId) , FOREIGN KEY (KokorinGroupId) REFERENCES KokorinGroups (KokorinId) );3.4 Ввод данных в таблицыДля работы с БД удобен онлайн сервис https://sqliteonline.com/.INSERT into KokorinGroups(KokorinId, KokorinGroup) VALUES(1, 'Группа А'),(2, 'Группа Б'),(3, 'Группа В'),(4, 'Группа Г'),(5, 'ГруппаД');INSERT into KokorinStudents(KokorinId, KokorinStudent, KokorinGroupId, KokorinPhone) VALUES(1, 'Петров С.С.', 1, '+7(302)123-89-96'),(2, 'Петрова А.С.', 1, '+7(302)123-89-98'),(3, 'Астахова Н.Ф.', 2, '+7(302)123-89-99'),(4, 'Маслова А.А.', 2, '+7(302)123-22-96'),(5, 'Матюхин Е.Н.', 3, '+7(828)123-89-96'),(6, 'Белов Г.Ю.', 3, '+7(689)123-89-96'),(7, 'Белов Б.Ю.', 4, '+7(111)123-89-96'),(8, 'Синицына М.М.', 4, '+7(302)745-89-96'),(9, 'Симонов А.Г.', 5, '+7(302)123-12-96'),(10, 'Тусков М.В.', 5, '+7(302)123-39-96');INSERT INTO KokorinTeachers(KokorinId, FirstName, LastName, Patronymic, KokorinPhone, KokorinEducation) VALUES(1, 'Махно', 'Сергей', 'Олегович', '23-56-89', 'МГИМО'),(2, 'Манаков', 'Семен', 'Петрович', '223-56-88', 'ЮФУ'),(3, 'Усова', 'Елена', 'Юрьевна', '23-56-10', 'МИФИ'),(4, 'Петренко', 'Екатерина', 'Андреевна', '23-56-12', 'СФГА'),(5, 'Столбикова', 'Наталья', 'Алексеевна', '23-56-66', 'ДГТУ');INSERT into KokorinSubjects(KokorinId, KokorinSubject, KokorinTeachersId, KokorinPrise) VALUES (1, 'Физика', 1, 300),(2, 'Высшая математика', 2, 300),(3, 'Литература', 3, 200),(4, 'Культурология', 4, 250),(5, 'Физкультура', 5, 150);INSERT intoKokorinTimetable(KokorinId, KokorinDate, KokorinSubjectId, KokorinCount, KokorinGroupId) VALUES (1, '2021-12-01 08:00:00', 1, 2, 1),(2, '2021-12-01 08:30:00', 2, 2, 2),(3, '2021-12-01 09:00:00', 5, 1, 3),(4, '2021-12-02 08:00:00', 2, 2, 1),(5, '2021-12-02 08:30:00', 3, 2, 2),(6, '2021-12-02 09:00:00', 5, 2, 4),(7, '2021-12-03 08:00:00', 3, 3, 5),(8, '2021-12-03 08:30:00', 4, 2, 4),(9, '2021-12-03 09:00:00', 1, 1, 3),(10, '2021-12-04 08:00:00', 4, 2, 1);3.5 Удаление данных (триггер)DROP TRIGGER IF EXISTS delete_KokorinGroups_row;CREATE TRIGGER delete_KokorinGroups_rowBEFORE DELETEON KokorinGroupsFOR EACH ROWBEGINdelete from KokorinStudents where KokorinGroupId = OLD.KokorinIdandOLD.KokorinId in (select KokorinGroupId from kokorinstudents)orOLD.KokorinId in (select KokorinGroupId from kokorintimetable);delete from KokorinTimetable where KokorinGroupId = OLD.KokorinIdandOLD.KokorinId in (select KokorinGroupId from kokorinstudents)orOLD.KokorinId in (select KokorinGroupId from kokorintimetable);END;SELECT * from KokorinGroups where KokorinId = 5SELECT * from KokorinStudents where KokorinGroupId = 5delete from KokorinGroups where KokorinId = 5Пример работы с БД приведен на рисунке 14-18.Рисунок 14 – БД SQLiteРисунок 15 – БД SQLiteРисунок 16 – БД SQLiteРисунок 17 – БД SQLiteРисунок 18 – БД SQLiteЗаключениеВ данной работе были созданы три базы данных:– Microsoft Access, – My SQL;– SQLite.Они имеют одинаковую структуру, но синтаксис запросов частично различается. Каждая СУБД имеет свои достоинства и недостатки и может быть выбрана для использования в определенном ряде задач.Список литературыMicrosoft 365 [Интернет ресурс] – https://www.microsoft.com/ru-ru/microsoft-365/access.Поддержка Microsoft 365 [Интернет ресурс] – https://support.microsoft.com/ru-ru/office.MicrosoftAccess. Википедия. [Интернет ресурс] – https://ru.wikipedia.org/wiki/Microsoft_Access.MYSQL.COM. [Интернет ресурс] – https://www.mysql.com/.MySQL. Википедия. [Интернет ресурс] – https://ru.wikipedia.org/wiki/MySQL.Что Такое MySQL: Объяснение MySQL Для Начинающих. [Интернет ресурс] – https://www.hostinger.ru/rukovodstva/shto-takoje-mysql/.SQLiteOnline. [Интернет ресурс] – https://sqliteonline.com/syntax/update/.Что такое SQLite? [Интернет ресурс] – https://www.sqlite.org/index.html.SQLite. Википедия. [Интернет ресурс] – https://ru.wikipedia.org/wiki/SQLite.SQLiteTutorial. [Интернет ресурс] – https://www.sqlitetutorial.net/.

1. Microsoft 365 [Интернет ресурс] – https://www.microsoft.com/ru-ru/microsoft-365/access.
2. Поддержка Microsoft 365 [Интернет ресурс] – https://support.microsoft.com/ru-ru/office.
3. Microsoft Access. Википедия. [Интернет ресурс] – https://ru.wikipedia.org/wiki/Microsoft_Access.
4. MYSQL.COM. [Интернет ресурс] – https://www.mysql.com/.
5. MySQL. Википедия. [Интернет ресурс] – https://ru.wikipedia.org/wiki/MySQL.
6. Что Такое MySQL: Объяснение MySQL Для Начинающих. [Интернет ресурс] – https://www.hostinger.ru/rukovodstva/shto-takoje-mysql/.
7. SQLite Online. [Интернет ресурс] – https://sqliteonline.com/syntax/update/.
8. Что такое SQLite? [Интернет ресурс] – https://www.sqlite.org/index.html.
9. SQLite. Википедия. [Интернет ресурс] – https://ru.wikipedia.org/wiki/SQLite.
10. SQLite Tutorial. [Интернет ресурс] – https://www.sqlitetutorial.net/.



Вопрос-ответ:

Можно ли создать трех баз данных на Microsoft Access, My SQL и SQLite?

Да, вы можете создать трех баз данных на Microsoft Access, My SQL и SQLite. Они предоставляют разные возможности и инструменты для создания и управления базами данных.

Какие возможности предоставляет Microsoft Access для создания баз данных?

Microsoft Access предоставляет удобное и интуитивно понятное средство для создания баз данных. Вы можете создавать таблицы, определять связи между таблицами, вводить и удалять данные, а также выполнять различные запросы и создавать отчеты.

Какие возможности предоставляет My SQL для создания баз данных?

My SQL является мощной и гибкой реляционной системой управления базами данных. Вы можете создавать таблицы, определять связи между таблицами, вводить и удалять данные, а также выполнять сложные запросы и создавать процедуры и триггеры.

Какие возможности предоставляет SQLite для создания баз данных?

SQLite является легкой и быстрой встраиваемой системой управления базами данных. Она позволяет создавать таблицы, определять связи между таблицами, вводить и удалять данные. Однако, в отличие от Microsoft Access и My SQL, у нее нет поддержки сложных запросов и процедур.

Как можно создать связи между таблицами в базе данных на My SQL?

Для создания связей между таблицами в базе данных на My SQL вы можете использовать внешние ключи. Внешний ключ в одной таблице ссылается на первичный ключ в другой таблице, таким образом устанавливая связь между ними. Это позволяет обеспечить целостность данных и облегчить выполнение операций с данными, используя связи между таблицами.

Какое программное обеспечение мне нужно для создания трех баз данных на Microsoft Access, My SQL и SQLite?

Для создания трех баз данных на Microsoft Access, My SQL и SQLite вам понадобятся соответствующие программы: Microsoft Access для создания базы данных на Access, MySQL для создания базы данных на MySQL и SQLite для создания базы данных на SQLite.

Какие возможности предоставляет Microsoft Access для создания базы данных и таблиц?

Microsoft Access предоставляет широкие возможности для создания базы данных и таблиц. Вы можете создавать таблицы, определять типы данных для полей, настраивать свойства полей, создавать связи между таблицами и многое другое.

Можно ли использовать триггер для удаления данных в базе данных на My SQL?

Да, можно использовать триггер для удаления данных в базе данных на My SQL. Триггеры позволяют автоматически выполнять определенные действия при наступлении определенного события, такого как удаление данных из таблицы.

Как создать связи между таблицами в базе данных на SQLLite?

Для создания связей между таблицами в базе данных на SQLLite вы можете использовать ключи, такие как первичные и внешние ключи. При создании таблицы вы можете указать поля, которые будут являться первичными ключами, а затем использовать эти ключи для связи с другими таблицами.