Logo Passei Direto
Buscar
Material
páginas com resultados encontrados.
páginas com resultados encontrados.

Prévia do material em texto

UNIVERSIDADE VEIGA DE ALMEIDA
GRADUAÇÃO DE SISTEMAS DE INFORMAÇÃO
CRIANDO UM BANCO DE DADOS NORMALIZADO
BANCO DE DADOS III
LEONARDO LEITE RANDOL TORRES DE SOUZA
MATRÍCULA: 1250101873
RIO DE JANEIRO
2025
LEONARDO LEITE RANDOL TORRES DE SOUZA
MATRÍCULA: 1250101873
CRIANDO UM BANCO DE DADOS NORMALIZADO
BANCO DE DADOS III
Trabalho apresentado em Avaliação
AVA 1, da disciplina Banco de Dados III
na Universidade Veiga de Almeida
do Rio de Janeiro, como requisito parcial
na obtenção da Graduação de Sistemas de Informação.
RIO DE JANEIRO
2025
Criando um database.
create database Restaurante
DEFAULT CHARACTER SET utf8
DEFAULT COLLATE utf8_general_ci;
Foi utilizado esses comandos para poder usar palavras com acentuações que possuem em nossa língua nativa.
Tabela Cliente:
create table Cliente (
cod_cli int not null auto_increment,
nome varchar (30) not null,
endereço varchar (50),
primary key (cod_cli)
) DEFAULT CHARSET = utf8;
Foi utilizado o auto increment no código do cliente para poder gerar um código novo a cada cliente, o varchar(30) para estipular um limite de caracteres sem utilizar espaços extras caso não atinja o limite e not null para o campo ser obrigatório, varchar(50) em endereço pelo mesmo motivo, mas por ser uma informação maior aumentei o limite, por fim a chave primária sendo o codigo do cliente para não gerar duplicidades.
Tabela Pedido:
create table Pedido (
cod_pedido int not null auto_increment,
cod_cli int not null,
data_dia date not null,
constraint pk_CPD primary key (cod_pedido, cod_cli, data_dia) 
) DEFAULT CHARSET = utf8;
 
O atributo data é um nome de programação, então foi usado data_dia e not null para o valor não poder ser nulo, utilizei a limitação do constraint como pedido para incluir as chaves primárias na mesma tabela.
Tabela Itens do Pedido:
create table ItensDoPedido (
cod_item int not null auto_increment, 
cod_pedido int not null, 
qtd char(2) not null, 
desconto decimal(2,2),
constraint pk_IP primary key (cod_item, cod_pedido) 
) DEFAULT CHARSET = utf8;
Na quantidade utilizei char(2) me baseando que as quantidades escolhidas serão são de 2 dígitos limites e o not null que não poderá ser nulo, enquanto que o desconto é utilizado o decimal(2,2) para valores de apenas duas casas antes e depois da virgula e sem obrigação de ser preenchido o desconto.
Tabela Prato:
create table Prato (
cod_prato int not null auto_increment, 
cod_tipo int not null, 
descricao tinytext,
preco decimal(3,2),
primary key (cod_prato)
) DEFAULT CHARSET = utf8;
Em descrição usei o tinytext para ser feita uma pequena descrição do prato, preço com o decimal(3,2) para caso os preços alcancem 3 casas decimas antes da virgula e depois da virgula 2 casas que é o máximo possível, e coloquei chave primária somente o cod_prato para depois fazer a chave secundária da nova tabela
Tabela Tipo do Prato:
create table TipoDoPrato (
cod_tipo int not null auto_increment, 
descricao tinytext,
primary key (cod_tipo)
 ) DEFAULT CHARSET = utf8;
Descrição do tipo do prato com o tinytext para a pequena descrição e a criação da chave primária da tabela cod_tipo
Criação da Secundária:
use Restaurante;
alter table Prato 
add foreign key (cod_tipo) 
references Prato (cod_prato);
Utilizei o use para me referir ao banco de dados, depois usei alter table referir a tabela Prato e add foreign key(cod_tipo) para adicionar a chave secundária a tabela referido através do references Prato (cod_prato);
Referencias:
Marcones Lira. Curso MySQL #02 - Instalando o MySQL com WAMP. Youtube, 2016 . Disponível em: https://www.youtube.com/watch?v=5JbAOWJbgIA
Acesso em: 13/11/2025.
Marcones Lira. Curso MySQL #03 - Criando o primeiro Banco de Dados. Youtube, 2016 . Disponível em: https://www.youtube.com/watch?v=m9YPlX0fcJk&t=1493s
Acesso em: 13/11/2025.
Marcones Lira. Curso MySQL #04 - Melhorando a Estrutura do Banco de Dados. Youtube, 2016 .
Disponível em: https://www.youtube.com/watch?v=cHLKtALWDos&t=619s
Acesso em: 13/11/2025.
WilliamDAssafMSFT. Restrições de chave primária e chave estrangeira. Microsoft, 2017. Disponível em: https://docs.microsoft.com/pt-br/sql/relational-databases/tables/primary-and-foreign-key-constraints?view=sql-server-ver15
Acesso em: 13/11/2025.
[Data]
5
image1.png

Mais conteúdos dessa disciplina