CREATE TABLE EDITORA (
COD_EDITORA INT NOT NULL,
DESCRICAO VARCHAR (30) NOT NULL,
ENDERECO VARCHAR (30) NULL,
CONSTRAINT PK_EDITORA PRIMARY KEY (COD_EDITORA)
);
CREATE TABLE AUTOR (
COD_AUTOR INT NOT NULL,
NOME VARCHAR (45) NOT NULL,
SEXO CHAR (1) NOT NULL,
DATA_NASCIMENTO DATE NOT NULL,
CONSTRAINT PK_AUTOR PRIMARY KEY (COD_AUTOR),
CONSTRAINT CK_SEXO CHECK (SEXO='M' OR SEXO = 'F' )
);
CREATE TABLE LIVRO (
COD_LIVRO INT NOT NULL,
ISBN VARCHAR (20) NOT NULL,
TITULO VARCHAR (45) NOT NULL,
NUM_EDICAO INT NOT NULL,
PRECO FLOAT NOT NULL,
COD_EDITORA INT NOT NULL,
CONSTRAINT PK_LIVRO PRIMARY KEY (COD_LIVRO),
CONSTRAINT FK_LIVRO_EDITORA FOREIGN KEY (COD_EDITORA)
REFERENCES EDITORA (COD_EDITORA)
);
CREATE TABLE LIVRO_AUTOR (
COD_LIVRO INT NOT NULL,
COD_AUTOR INT NOT NULL,
CONSTRAINT PK_LIVRO_AUTOR PRIMARY KEY
(COD_LIVRO, COD_AUTOR),
CONSTRAINT FK_LA_LIVRO FOREIGN KEY (COD_LIVRO)
REFERENCES LIVRO(COD_LIVRO),
CONSTRAINT FK_LA_AUTOR FOREIGN KEY (COD_AUTOR)
REFERENCES AUTOR (COD_AUTOR)
);
INSERT INTO EDITORA
(COD_EDITORA, DESCRICAO, ENDERECO)
VALUES (1,'Campus', 'Rua do Timbó'),
(2,'Abril', null),
(3,'Editora Teste', null);
INSERT INTO LIVRO
(COD_LIVRO, ISBN, TITULO, NUM_EDICAO, PRECO,
COD_EDITORA)
VALUES (1,'12345','Banco de Dados',3, 70.00, 1),
(2,'35790','SGBD',1, 85.00, 2),
(3,'98765','Redes de Computadores',2, 80.00,2);
INSERT INTO AUTOR
(COD_AUTOR, NOME, SEXO, DATA_NASCIMENTO)
VALUES (1,'João','M','01.01.1970'),
(2,'Maria', 'F', '17.05.1974'),
(3,'José', 'M', '10.10.1977'),
(4,'Carla', 'F', '08.12.1964');
INSERT INTO LIVRO_AUTOR
(COD_LIVRO, COD_AUTOR)
VALUES (1,1), (1,2),(2,2), (2,4), (3,3);