fahadkalil

sql_livros_postgres

Mar 4th, 2021
934
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. SET SEARCH_PATH TO livros;
  2.  
  3. DROP TABLE IF EXISTS AUTORIA CASCADE;
  4. DROP TABLE IF EXISTS LIVRO CASCADE;
  5. DROP TABLE IF EXISTS TIPO CASCADE;
  6. DROP TABLE IF EXISTS AUTOR CASCADE;
  7. DROP TABLE IF EXISTS EDITORA CASCADE;
  8. DROP TABLE IF EXISTS CIDADE CASCADE;
  9.  
  10. /* Cidade (codCid, nome, UF) */
  11. CREATE TABLE cidade (
  12.   codCid INT,
  13.   nome VARCHAR(60),
  14.   UF CHAR(2),
  15.  
  16.   CONSTRAINT pk_cidade PRIMARY KEY (codCid)
  17. );
  18.  
  19. /* Editora (codEd, nome, endereco, codCid)  
  20.     codCid referencia Cidade (codCid) */
  21. CREATE TABLE editora (
  22.   codEd INT,
  23.   nome VARCHAR(60),
  24.   endereco VARCHAR(100),
  25.   codCid INT,
  26.  
  27.   CONSTRAINT pk_editora PRIMARY KEY (codEd),
  28.   CONSTRAINT fk_editora_cidade FOREIGN KEY (codCid) REFERENCES Cidade (codCid)
  29. );
  30.  
  31. /* Autor (codAutor, nome, email, dataNasc, codCid)  
  32.     codCid referencia Cidade (codCid) */
  33. CREATE TABLE autor (
  34.   codAutor INT,
  35.   nome VARCHAR(60),
  36.   dataNasc DATE,
  37.   codCid INT,
  38.  
  39.   CONSTRAINT pk_autor PRIMARY KEY (codAutor),
  40.   CONSTRAINT fk_autor_cidade FOREIGN KEY (codCid) REFERENCES Cidade (codCid)
  41. );
  42.  
  43. /* Tipo (codTipo, nome) */
  44. CREATE TABLE tipo (
  45.   codTipo INT,
  46.   nome VARCHAR(100),
  47.   CONSTRAINT pk_tipo PRIMARY KEY (codTipo)
  48. );
  49.  
  50. /* Livro (codLivro, titulo, idioma, codTipo, codEd, precoSugerido)  
  51.     codTipo referencia Tipo (codTipo)  
  52.     codEd referencia Editora (codEd) */
  53. CREATE TABLE livro (
  54.   codLivro INT,
  55.   titulo VARCHAR(100),
  56.   idioma VARCHAR(50),
  57.   codTipo INT,
  58.   codEd INT,
  59.   precoSugerido NUMERIC(15,2),
  60.  
  61.   CONSTRAINT pk_livro PRIMARY KEY (codLivro),
  62.   CONSTRAINT fk_livro_tipo FOREIGN KEY (codTipo) REFERENCES Tipo (codTipo),
  63.   CONSTRAINT fk_livro_editora FOREIGN KEY (codEd) REFERENCES Editora (codEd)
  64. );
  65.  
  66. /* Autoria (codAutor, codLivro)
  67.     codAutor referencia Autor (codAutor)
  68.     codLivro referencia Livro (codLivro) */
  69. CREATE TABLE autoria (
  70.   codAutor INT,
  71.   codLivro INT,
  72.  
  73.   CONSTRAINT pk_autoria PRIMARY KEY (codAutor, codLivro),
  74.   CONSTRAINT fk_autoria_autor FOREIGN KEY (codAutor) REFERENCES Autor (codAutor),
  75.   CONSTRAINT fk_autoria_livro FOREIGN KEY (codLivro) REFERENCES Livro (codLivro)
  76. );
  77.  
  78. DELETE FROM AUTORIA;
  79. DELETE FROM LIVRO;
  80. DELETE FROM TIPO;
  81. DELETE FROM AUTOR;
  82. DELETE FROM EDITORA;
  83. DELETE FROM CIDADE;
  84.  
  85. INSERT INTO cidade VALUES (1, 'Passo Fundo', 'RS');
  86. INSERT INTO cidade VALUES (2, 'Porto Alegre', 'RS');
  87. INSERT INTO cidade VALUES (3, 'Rio de Janeiro', 'RJ');
  88. INSERT INTO cidade VALUES (4, 'Codisburgo', 'MG');
  89. INSERT INTO cidade VALUES (5, 'São Paulo', 'SP');
  90.  
  91. INSERT INTO editora VALUES (1, 'Pearson', 'Rua ABC, 2013', 1);
  92. INSERT INTO editora VALUES (2, 'Bookman', 'Rua XYZ, 829', 2);
  93. INSERT INTO editora VALUES (3, 'Nova Fronteira', '', 3);
  94. INSERT INTO editora VALUES (4, 'Record', '', 3);
  95.  
  96. INSERT INTO autor VALUES (1, 'Machado de Assis', TO_DATE('21/06/1839', 'dd/mm/yyyy'), 3);
  97. INSERT INTO autor VALUES (2, 'Guimarães Rosa',   TO_DATE('27/06/1908', 'dd/mm/yyyy'), 4);
  98. INSERT INTO autor VALUES (3, 'Assis de Machado', TO_DATE('01/01/1999', 'dd/mm/yyyy'), 1);
  99.  
  100. INSERT INTO tipo VALUES (1, 'Romance policial');
  101. INSERT INTO tipo VALUES (2, 'Drama psicológico');
  102. INSERT INTO tipo VALUES (3, 'Ficção');
  103. INSERT INTO tipo VALUES (4, 'Contos');
  104. INSERT INTO tipo VALUES (5, 'Realismo psicológico');
  105.  
  106. INSERT INTO livro VALUES (1, 'Meu 1o livro', 'Português', 1, 1, 23.00);
  107. INSERT INTO livro VALUES (2, 'Meu 2o livro', 'Inglês', 1, 2, 45.00);
  108. INSERT INTO livro VALUES (3, 'Meu 3o livro', 'Inglês', 1, 2, 33.00);
  109. INSERT INTO livro VALUES (4, 'Sagarana', 'Português', 4, 3, 19.00);
  110. INSERT INTO livro VALUES (5, 'Dom Casmurro', 'Português', 5, 4, 18.90);
  111.  
  112. INSERT INTO autoria VALUES (3, 1);
  113. INSERT INTO autoria VALUES (3, 2);
  114. INSERT INTO autoria VALUES (3, 3);
  115. INSERT INTO autoria VALUES (2, 4);
  116. INSERT INTO autoria VALUES (1, 5);
RAW Paste Data

Adblocker detected! Please consider disabling it...

We've detected AdBlock Plus or some other adblocking software preventing Pastebin.com from fully loading.

We don't have any obnoxious sound, or popup ads, we actively block these annoying types of ads!

Please add Pastebin.com to your ad blocker whitelist or disable your adblocking software.

×