Database Schema - fpmi-pmvs2025/pmvs13-lab8-studymate_team GitHub Wiki
Схема базы данных
ER-диаграмма
erDiagram
Users {
int id PK
string email UK
string password
string firstname
string lastname
int group_no
}
Schedule {
int id PK
string day
int group_no
string subject
string time
string room
}
Описание таблиц
Users
Таблица для хранения информации о пользователях.
Поле | Тип | Описание |
---|---|---|
id | INTEGER | Первичный ключ, автоинкремент |
TEXT | Email пользователя (уникальный) | |
password | TEXT | Пароль пользователя |
firstname | TEXT | Имя пользователя |
lastname | TEXT | Фамилия пользователя |
group_no | INTEGER | Номер группы пользователя |
Schedule
Таблица для хранения расписания занятий.
Поле | Тип | Описание |
---|---|---|
id | INTEGER | Первичный ключ, автоинкремент |
day | TEXT | День недели |
group_no | INTEGER | Номер группы |
subject | TEXT | Название предмета |
time | TEXT | Время занятия |
room | TEXT | Номер аудитории |
Связи между таблицами
- Users.group_no -> Schedule.group_no (Many-to-One)
- Одна группа может иметь много записей в расписании
- Один пользователь принадлежит к одной группе
Примеры данных
Users
INSERT INTO Users (email, password, firstname, lastname, group_no)
VALUES
('[email protected]', '1111', 'Иван', 'Иванов', 1),
('[email protected]', '2222', 'Анна', 'Петрова', 2),
('[email protected]', '3333', 'John', 'Smith', 3),
('[email protected]', '4444', 'Min', 'Lee', 4);
Schedule
INSERT INTO Schedule (day, group_no, subject, time, room)
VALUES
('Понедельник', 1, 'Математика', '09:00', '101'),
('Понедельник', 1, 'Физика', '10:45', '202'),
('Вторник', 2, 'Программирование', '09:00', '303'),
('Вторник', 2, 'Базы данных', '10:45', '404');
SQL-файл
Полная схема базы данных доступна в файле: app/src/main/java/com/bsu/studymate/db/db.sql