Exercício 11.17
Página 1 de 1
Exercício 11.17
--1 – Reorganize a tabela produto dos exercícios anteriores
--de forma a utilizar chaves estrangeiras onde apropriado
-- Não é necessário inserir os dados, apenas
-- criar/recriar as tabelas necessárias
CREATE TABLE fabricante (
codigo_fabricante INTEGER NOT NULL PRIMARY KEY,
nome_fabricante VARCHAR(100)
);
CREATE TABLE categoria (
codigo_categoria INTEGER NOT NULL PRIMARY KEY,
nome_categoria VARCHAR(100)
);
CREATE TABLE produto (
codigo_produto SERIAL NOT NULL,
nome_produto VARCHAR(200) NOT NULL,
codigo_fabricante INTEGER,
codigo_categoria INTEGER,
preco_produto NUMERIC(8,2),
PRIMARY KEY (codigo_produto),
FOREIGN KEY (codigo_fabricante)
REFERENCES fabricante(codigo_fabricante),
FOREIGN KEY (codigo_categoria)
REFERENCES categoria(codigo_categoria)
);
--2 –Cada evento olímpico é composto por uma série
--de provas (um jogo de futebol, uma prova de natação, etc).
--Cada prova tem um nome e um horário de início. Crie
--uma tabela de provas
CREATE TABLE evento (
codigo_evento INTEGER NOT NULL PRIMARY KEY,
nome_evento VARCHAR(100) NOT NULL,
codigo_esporte INTEGER NOT NULL REFERENCES esporte(codigo_esporte)
);
CREATE TABLE prova (
codigo_prova INTEGER NOT NULL PRIMARY KEY,
nome_prova VARCHAR(100) NOT NULL,
horario_prova TIMESTAMP NOT NULL,
codigo_evento INTEGER NOT NULL REFERENCES evento(codigo_evento)
);
--de forma a utilizar chaves estrangeiras onde apropriado
-- Não é necessário inserir os dados, apenas
-- criar/recriar as tabelas necessárias
CREATE TABLE fabricante (
codigo_fabricante INTEGER NOT NULL PRIMARY KEY,
nome_fabricante VARCHAR(100)
);
CREATE TABLE categoria (
codigo_categoria INTEGER NOT NULL PRIMARY KEY,
nome_categoria VARCHAR(100)
);
CREATE TABLE produto (
codigo_produto SERIAL NOT NULL,
nome_produto VARCHAR(200) NOT NULL,
codigo_fabricante INTEGER,
codigo_categoria INTEGER,
preco_produto NUMERIC(8,2),
PRIMARY KEY (codigo_produto),
FOREIGN KEY (codigo_fabricante)
REFERENCES fabricante(codigo_fabricante),
FOREIGN KEY (codigo_categoria)
REFERENCES categoria(codigo_categoria)
);
--2 –Cada evento olímpico é composto por uma série
--de provas (um jogo de futebol, uma prova de natação, etc).
--Cada prova tem um nome e um horário de início. Crie
--uma tabela de provas
CREATE TABLE evento (
codigo_evento INTEGER NOT NULL PRIMARY KEY,
nome_evento VARCHAR(100) NOT NULL,
codigo_esporte INTEGER NOT NULL REFERENCES esporte(codigo_esporte)
);
CREATE TABLE prova (
codigo_prova INTEGER NOT NULL PRIMARY KEY,
nome_prova VARCHAR(100) NOT NULL,
horario_prova TIMESTAMP NOT NULL,
codigo_evento INTEGER NOT NULL REFERENCES evento(codigo_evento)
);
Tópicos semelhantes
» Exercício 3.13.5 - MaiorMenor10Numeros
» Exercício 3.10.3 - 1 a 100 (while)
» Exercício 5.20
» Exercício 9.10 (todos)
» Exercício 7.3 a 7.7
» Exercício 3.10.3 - 1 a 100 (while)
» Exercício 5.20
» Exercício 9.10 (todos)
» Exercício 7.3 a 7.7
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos