Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ПЗ_3.doc
Скачиваний:
0
Добавлен:
01.03.2025
Размер:
691.71 Кб
Скачать
  1. Краткое описание предметной области

Проектируемая база данных предназначена для организации веб-форума.

Форум организован в виде следующей иерархии: рубрика – тема – сообщение.

На форуме имеются группы, в которых проводятся голосования.

Любой пользователь может быть зарегистрирован на форуме, далее создавать темы, рубрики, оставлять сообщения, участвовать в голосованиях, добавляться в различные группы.

Регистрация состоит из заполнения специальной формы с личными данными пользователя. Также у пользователя имеется возможность изменения личной информации уже после регистрации.

Также на форуме ведется статистика для каждого пользователя.

Помимо этого на форуме ведется база заблокированных пользователей (временно или полностью), получающих срочный или бессрочный отказ в доступе к форуму.

В целях безопасности по каждому пользователю ведется статистика его активности (ip-адрес, с которого пользователь последний раз посещал форум; время последнего посещения)

  1. Описание таблиц базы данных

Название

Описание

Тип

user_info

(таблица личной информации пользователя)

id_user

Идентификатор пользователя

INTEGER

db_user

Имя user и login в БД

NVARCHAR

nikname

Ник пользователя

NVARCHAR

name

Имя пользователя

NVARCHAR

surname

Фамилия пользователя

NVARCHAR

email

Адрес электронной почты

NVARCHAR

birthday

День рождения

SMALLDATETIME

city

Город

NVARCHAR

telephone

Телефон

NVARCHAR

sex

Пол

BIT

time_zone

Временная зона

SMALLINT

regdate

Дата регистрации

SMALLDATETIME

user_activity

(таблица активности пользователя)

id_user

Идентификатор пользователя

INTEGER

topics

Кол-во созданных тем

INTEGER

answers

Кол-во ответов

INTEGER

visitor_statistic

(таблица статистики пользователя)

id_user

Идентификатор пользователя

INTEGER

last_ip

ip-адрес последнего посещения

VARCHAR

last_time

Время последнего посещения

SMALLDATETIME

rubric

(таблица рубрик)

title

Название рубрики

NVARCHAR

id_rubric

Идентификатор рубрики

INTEGER

topics

Количество тем в рубрике

INTEGER

popularity

Популярность рубрики

INTEGER

author

Автор рубрики

INTEGER

last_change_date

Время последнего изменения

SMALLDATETIME

topic

(таблица тем)

id_topic

Идентификатор темы

INTEGER

title

Название темы

NVARCHAR

author

Автор темы

INTEGER

rubric

Рубрика, которой принадлежит тема

INTEGER

creation_date

Дата создания темы

SMALLDATETIME

last_change_date

Время последнего изменения

SMALLDATETIME

messages_num

Кол-во сообщений в теме

INTEGER

message_info

(таблица сообщений)

id_message

Идентификатор сообщения

INTEGER

src_user

Пользователь, отправивший сообщение

INTEGER

message_date

Дата отправки

SMALLDATETIME

message_text

Текст сообщения

NTEXT

topic

Тема, которой принадлежит сообщение

INTEGER

black_list

(черный список ползователей)

id_user

Идентификатор пользователя

INTEGER

reason_text

Причина блокирования

NVARCHAR

date_begin

Дата блокирования

SMALLDATETIME

date_end

Дата разблокировки

SMALLDATETIME

group_info

(таблица групп)

id_group

Идентификатор группы

INTEGER

author

Автор группы

INTEGER

group_date

Дата создания группы

SMALLDATETIME

title

Название группы

NVARCHAR

votes

(таблица голосований)

id_vote

Идентификатор голосования

INTEGER

question

Текст вопроса

NVARCHAR

author

Автор

INTEGER

id_group

Группа, в которой задается вопрос

INTEGER

date_begin

Дата начала голосования

SMALLDATETIME

date_end

Дата конца голосования

SMALLDATETIME

answers

(таблиица ответов на голосования)

id_answer

Идентификатор ответа

INTEGER

vote

Голосование, которому принадлежит ответ

INTEGER

ans_number

Номер ответа

TINYINT

ans_text

Текст ответа

NVARCHAR

quantity

Кол-во данных ответов

INTEGER

user_group

(таблица принадлежности пользователя группе)

id_user

Идентификатор пользователя

INTEGER

id_group

Идентификатор группы

INTEGER

best_users

(таблица лучших поьзователей)

id_user

Идентификатор пользователя

INTEGER

points

Кол-во очков пользователя

INTEGER

choise_date

Дата выбора

SMALLDATETIME

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]