Guest User

Untitled

a guest
May 22nd, 2018
72
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.67 KB | None | 0 0
  1. CREATE TABLE PRODUCTS (
  2. id_product BIGINT(10) UNSIGNED AUTO_INCREMENT PRIMARY KEY,
  3. code VARCHAR(6) NOT NULL UNIQUE,
  4. name VARCHAR(30) NOT NULL,
  5. price FLOAT(6,2) UNSIGNED NOT NULL,
  6. is_discounted TINYINT(1) NOT NULL,
  7. discount_percentage INT(2) NOT NULL,
  8. discounted_price FLOAT(6,2) NOT NULL,
  9. description TEXT NOT NULL,
  10. stock INT(4) UNSIGNED NOT NULL,
  11. photo_1 VARCHAR(50),
  12. product_type_id BIGINT(4) UNSIGNED NOT NULL,
  13. brand_id BIGINT(4) UNSIGNED NOT NULL,
  14. FOREIGN KEY (product_type_id) REFERENCES product_types (id_product_type),
  15. FOREIGN KEY (brand_id) REFERENCES brands (id_brand),
  16. is_visible TINYINT(1) NOT NULL
  17. )
  18. ENGINE = INNODB
  19. CHARSET= UTF8
  20. COLLATE= utf8_unicode_ci
  21.  
  22. CREATE TABLE PRODUCT_SALES (
  23. id_product_sale BIGINT(10) UNSIGNED AUTO_INCREMENT PRIMARY KEY,
  24. QUANTITY INT(4) UNSIGNED NOT NULL,
  25. sale_date DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
  26. total_price FLOAT(12,2) UNSIGNED NOT NULL,
  27.  
  28. user_id BIGINT(4) UNSIGNED NOT NULL,
  29. FOREIGN KEY (user_id) REFERENCES USERS(id_user),
  30.  
  31. product_id BIGINT(4) UNSIGNED NOT NULL,
  32. FOREIGN KEY (product_id) REFERENCES PRODUCTS(id_product),
  33.  
  34. payment_method_id BIGINT(4) UNSIGNED NOT NULL,
  35. FOREIGN KEY (payment_method_id) REFERENCES PAYMENT_METHODS(id_payment_method),
  36.  
  37. sale_status_id BIGINT(4) UNSIGNED NOT NULL,
  38. FOREIGN KEY (sale_status_id) REFERENCES SALE_STATUS(id_sale_status)
  39.  
  40. )
  41. ENGINE = INNODB
  42. CHARSET= UTF8
  43. COLLATE= utf8_unicode_ci
  44.  
  45. CREATE TRIGGER updateStock
  46. AFTER INSERT
  47. ON PRODUCT_SALES
  48. FOR EACH ROW
  49. UPDATE PRODUCTS
  50. SET PRODUCTS.stock = PRODUCTS.stock - PRODUCT_SALES.quantity
  51. WHERE PRODUCTS.id_product = PRODUCT_SALES.product_id
Add Comment
Please, Sign In to add comment