Ir ao conteúdo
  • Cadastre-se

Banco inconsistente


Arthur2010

Posts recomendados

Olá galera, to com uma dúvida, tenho o banco de uma loja de video game, bem simples, mas não sei se ele está correto para que o pedido tenha mais

de um item:

CREATE TABLE Cliente (
codc integer PRIMARY KEY,
nomec varchar(30) not null,
fonec varchar(10) not null
);

CREATE TABLE Videogame (
codvg integer PRIMARY KEY,
modelovg varchar(15) not null,
precovg float not null,
qtdvg int not null
);


CREATE TABLE Login (
nome varchar(30) not null,
senha varchar (10) not null
);

CREATE TABLE Pedido (
codp integer PRIMARY KEY,
FKcodc integer,
FKcodvg integer,
FOREIGN KEY(FKcodc) REFERENCES Cliente (codc),
FOREIGN KEY(FKcodvg) REFERENCES Videogame (codvg)
);

Obrigado!

Link para o comentário
Compartilhar em outros sites

  • Moderador
Olá galera, to com uma dúvida, tenho o banco de uma loja de video game, bem simples, mas não sei se ele está correto para que o pedido tenha mais

de um item:

CREATE TABLE Cliente (
codc integer PRIMARY KEY,
nomec varchar(30) not null,
fonec varchar(10) not null
);

CREATE TABLE Videogame (
codvg integer PRIMARY KEY,
modelovg varchar(15) not null,
precovg float not null,
qtdvg int not null
);


CREATE TABLE Login (
nome varchar(30) not null,
senha varchar (10) not null
);

CREATE TABLE Pedido (
codp integer PRIMARY KEY,
FKcodc integer,
FKcodvg integer,
FOREIGN KEY(FKcodc) REFERENCES Cliente (codc),
FOREIGN KEY(FKcodvg) REFERENCES Videogame (codvg)
);

Obrigado!

é uma loja de vendas? então esta faltando tabelas no seu banco.

deves criar uma tabela itensPedido com relaçao de N:N entre uma tabela de vendas e a tabela videogame.

sendo que na tabela vendas você fará um relacionamento de 1:N com cliente .

explicaçao:

na tabela vendas você armazenará o id do cliente, a data da venda, o valor total, e obrigatoriamente o codigo da venda.

e na tabela itensPedidos você armazenará o id da venda, o codigo do videogame, a quantidade comprada e valor unitario dele.

reveja sua tabela amigo.

abraço

Link para o comentário
Compartilhar em outros sites

Certo! acho que entendi!

Obrigado =)

CREATE TABLE Cliente (
codc integer PRIMARY KEY,
nomec varchar(30) not null,
fonec varchar(10) not null
);

CREATE TABLE Videogame (
codvg integer PRIMARY KEY,
modelovg varchar(15) not null,
precovg float not null,
qtdvg int not null
);

CREATE TABLE Login (
nome varchar(30) not null,
senha varchar (10) not null
);

CREATE TABLE Pedido (
codp integer PRIMARY KEY,
FKcodc integer,
FKcodvg integer,
FOREIGN KEY(FKcodc) REFERENCES Cliente (codc),
FOREIGN KEY(FKcodvg) REFERENCES Videogame (codvg)
);

CREATE TABLE ItemPedido (
FKcodvnd integer,
FKcodvg integer,
qtdcomprada integer not null,
valorunt float not null,
FOREIGN KEY(FKcodvg) REFERENCES Videogame (codvg),
FOREIGN KEY(FKcodvnd) REFERENCES Venda (codvnd),
);

CREATE TABLE Venda (
codvnd integer PRIMARY KEY,
FKcodc integer,
datavnd date not null,
valortotal float not null,
FOREIGN KEY(FKcodc) REFERENCES Cliente (codc),
);

Link para o comentário
Compartilhar em outros sites

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...