Advertisement
layet

BANCO DE DADOS SITE DE ACTION FIGURE

Apr 5th, 2021
4,749
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
SQL 2.01 KB | None | 0 0
  1. DROP DATABASE LOJA;
  2.  
  3. CREATE DATABASE LOJA;
  4.  
  5. USE LOJA;
  6.  
  7. CREATE TABLE CARRINHO (
  8. idP INT AUTO_INCREMENT PRIMARY KEY,
  9. QTD INT NOT NULL,
  10. PRECO INT
  11. );
  12.  
  13. CREATE TABLE CLIENTE (
  14. ID INT AUTO_INCREMENT PRIMARY KEY,
  15. NOME VARCHAR (50),
  16. CPF VARCHAR (50),
  17. ENDERECO VARCHAR (50),
  18. CEP VARCHAR (50),
  19. CELULAR VARCHAR (50)
  20. );
  21.  
  22. CREATE TABLE ESTOQUE(
  23. ID INT AUTO_INCREMENT PRIMARY KEY,
  24. NOME VARCHAR (80) NOT NULL,
  25. QTD INT NOT NULL,
  26. VALOR INT
  27. );
  28.  
  29. CREATE TABLE PEDIDO (
  30. ID_PEDIDO INT,
  31. ID_PRODUTO INT,
  32. QTD INT
  33. );
  34.  
  35. INSERT INTO estoque VALUES (NULL,'NARUTO',25,350);
  36. INSERT INTO estoque VALUES (NULL,'SASUKE',15,250);
  37. INSERT INTO estoque VALUES (NULL,'KAKASHI',20,300);
  38. INSERT INTO estoque VALUES (NULL,'GAARA',15,400);
  39. INSERT INTO estoque VALUES (NULL,'MADARA',25,300);
  40. INSERT INTO estoque VALUES (NULL,'BORUTO',10,100);
  41. INSERT INTO estoque VALUES (NULL,'NARUTO ADULTO',10,150);
  42. INSERT INTO estoque VALUES (NULL,'OROCHIMARU',15,300);
  43. INSERT INTO estoque VALUES (NULL,'OBITO',20,250);
  44. INSERT INTO estoque VALUES (NULL,'ITACHI AMBU',20,450);
  45. INSERT INTO estoque VALUES (NULL,'SHIKAMARU',15,650);
  46. INSERT INTO estoque VALUES (NULL,'ITACHI',25,500);
  47.  
  48.  
  49. SET SQL_SAFE_UPDATES = 0;
  50.  
  51. DELIMITER $
  52. CREATE TRIGGER FINAL
  53. AFTER INSERT
  54. ON cliente
  55. FOR EACH ROW
  56. BEGIN
  57.     INSERT INTO pedido (id_produto, qtd) SELECT idP, qtd FROM carrinho;
  58.     UPDATE pedido SET ID_PEDIDO = NEW.id WHERE ID_PEDIDO IS NULL;
  59. END$
  60. DELIMITER $
  61.  
  62.  
  63. DELIMITER $
  64. CREATE TRIGGER ESTOQUE
  65. AFTER INSERT
  66. ON PEDIDO
  67. FOR EACH ROW
  68. BEGIN
  69.     UPDATE ESTOQUE SET QTD = QTD - NEW.QTD WHERE ID = NEW.ID_PRODUTO;
  70. END$
  71. DELIMITER $
  72.  
  73. Delimiter $
  74. CREATE PROCEDURE PEDIDO (IN _S INT)
  75. BEGIN
  76. SELECT pedido.qtd, nome FROM estoque, pedido WHERE id_produto = id AND id_pedido = _S;
  77. END$
  78. DELIMITER $
  79.  
  80.  
  81. DELIMITER $
  82.  
  83. CREATE TRIGGER PRECO
  84. BEFORE INSERT ON CARRINHO
  85. FOR EACH ROW
  86. BEGIN
  87.     UPDATE estoque SET NEW.preco = estoque.VALOR * NEW.qtd WHERE estoque.ID = NEW.idp;
  88. END$
  89.  
  90. DELIMITER $
  91.  
  92. CREATE VIEW TOTAL AS SELECT SUM(preco) FROM carrinho;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement