Banco de Dados
Descrição
A modelagem, documentação e organização do banco de dados se situará nessa seção.
Modelagem
Modelo Lógico
Comunidades
Atributo |
Tipo |
Restrições |
community_id |
INT(10) |
🔑PK, NOT NULL |
name |
VARCHAR(255) |
|
description |
VARCHAR(255) |
|
Restaurantes
Atributo |
Tipo |
Restrições |
restaurant_id |
CHAR(10) |
🔑PK, NOT NULL |
name |
VARCHAR(255) |
|
corporate_name |
VARCHAR(255) |
|
cnpj |
CHAR(14) |
|
email |
VARCHAR(255) |
|
password |
VARCHAR(255) |
|
business_phone |
CHAR(11) |
|
admin_phone |
CHAR(11) |
|
admin_name |
CHAR(11) |
|
profile_photo |
BYTEA |
|
background_photo |
BYTEA |
|
Fotos de Restaurantes
Atributo |
Tipo |
Restrições |
rp_id |
CHAR(10) |
🔑PK, NOT NULL |
restaurant_id |
CHAR(10) |
🔗FK,NOT NULL |
order |
TINYINT |
NOT NULL |
file |
BYTEA |
|
Restrições
Atributo |
Tipo |
Restrições |
restriction_id |
CHAR(10) |
🔑PK, NOT NULL |
name |
VARCHAR(255) |
|
Usuários
Atributo |
Tipo |
Restrições |
user_id |
CHAR(10) |
🔑PK, NOT NULL |
name |
VARCHAR(255) |
|
email |
VARCHAR(255) |
|
password |
VARCHAR(255) |
|
birthdate |
DATE |
|
city |
VARCHAR(255) |
|
uf |
CHAR(2) |
|
phone |
CHAR(11) |
|
profile_photo |
BYTEA |
|
Endereços
Atributo |
Tipo |
Restrições |
address_id |
CHAR(10) |
🔑PK, NOT NULL |
restaurant_id |
CHAR(10) |
🔗FK,NOT NULL |
street |
VARCHAR(255) |
|
number |
VARCHAR(55) |
|
complement |
VARCHAR(255) |
|
cep |
CHAR(8) |
|
city |
VARCHAR(255) |
|
uf |
CHAR(2) |
|
latitude |
VARCHAR(255) |
|
longitude |
VARCHAR(255) |
|
Restrições da Comunidade
Atributo |
Tipo |
Restrições |
cr_id |
CHAR(10) |
🔑PK, NOT NULL |
community_id |
CHAR(10) |
🔗FK,NOT NULL |
restriction_id |
CHAR(10) |
🔗FK,NOT NULL |
Restrições Personalizadas do Usuário
Atributo |
Tipo |
Restrições |
cur_id |
CHAR(10) |
🔑PK, NOT NULL |
user_id |
CHAR(10) |
🔗FK,NOT NULL |
category |
CATEGORY |
NOT NULL |
restriction |
VARCHAR(255) |
|
Posts
Atributo |
Tipo |
Restrições |
post_id |
CHAR(10) |
🔑PK, NOT NULL |
user_id |
CHAR(10) |
🔗FK,NOT NULL |
title |
VARCHAR(255) |
|
text |
VARCHAR(255) |
|
community_id |
CHAR(10) |
🔗FK,NOT NULL |
link |
VARCHAR(255) |
|
Restrições do Restaurante
Atributo |
Tipo |
Restrições |
rr_id |
CHAR(10) |
🔑PK, NOT NULL |
restaurant_id |
CHAR(10) |
🔗FK, NOT NULL |
restriction_id |
CHAR(10) |
🔗FK, NOT NULL |
Categorias de Restrição
Valor |
Descrição |
Sensibilidade |
|
Intolerância |
|
Alergia |
|
Autoimune |
|
Opcional |
|
Restrições do Usuário
Atributo |
Tipo |
Restrições |
ur_id |
CHAR(10) |
🔑PK, NOT NULL |
user_id |
CHAR(10) |
🔗FK, NOT NULL |
restriction_id |
CHAR(10) |
🔗FK, NOT NULL |
category |
CATEGORY |
NOT NULL |
Comentários de Posts
Atributo |
Tipo |
Restrições |
pc_id |
CHAR(10) |
🔑PK, NOT NULL |
user_id |
CHAR(10) |
🔗FK, NOT NULL |
post_id |
CHAR(10) |
🔗FK, NOT NULL |
text |
VARCHAR(255) |
|
response_to |
CHAR(10) |
NULL |
Cardinalidades
- Restaurantes - Fotos de Restaurantes: Um restaurante possui várias fotos, e cada foto pertence a um restaurante.
- Restaurantes - Endereços: Um restaurante possui um endereço, e cada endereço pertence a um restaurante.
- Comunidades - Restrições da Comunidade: Uma comunidade possui várias restrições, e cada restrição da comunidade pertence a uma comunidade.
- Restrições - Restrições da Comunidade: Uma restrição pode estar associada a várias comunidades, e cada restrição da comunidade pertence a uma restrição.
- Usuários - Restrições Personalizadas do Usuário: Um usuário possui várias restrições personalizadas, e cada restrição personalizada pertence a um usuário.
- Usuários - Posts: Um usuário pode criar vários posts