Advertisement
lena-my

TSQL - Cardinalités

Jul 11th, 2024 (edited)
33
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
SQL 4.21 KB | None | 0 0
  1. CREATE DATABASE stock;
  2.  
  3. -- create table product
  4. CREATE TABLE product (
  5.     id INT PRIMARY KEY IDENTITY(1,1),
  6.     name VARCHAR(80) NOT NULL,
  7.     price DECIMAL(10, 2)
  8. )
  9.  
  10. -- create table category
  11. CREATE TABLE category (
  12.     id INT PRIMARY KEY IDENTITY(1,1),
  13.     name VARCHAR(80) NOT NULL,
  14. )
  15.  
  16. -- create transition table to many to many relation
  17. CREATE TABLE productCategory (
  18.     idProduct INT,
  19.     CONSTRAINT fkProduct
  20.         FOREIGN KEY (idProduct)
  21.         REFERENCES product(id),
  22.     idCategory INT,
  23.     CONSTRAINT fkCategory
  24.         FOREIGN KEY (idCategory)
  25.         REFERENCES category(id)
  26. )
  27.  
  28. -- create table purchase
  29. CREATE TABLE purchase (
  30.     id INT PRIMARY KEY IDENTITY(1,1),
  31.     DATE DATE,
  32.     fkProduct INT,
  33.     CONSTRAINT fkOrderProduct
  34.         FOREIGN KEY (fkProduct)
  35.         REFERENCES product(id),
  36. )
  37.  
  38. -- create table stock
  39. CREATE TABLE stock (
  40.     id INT PRIMARY KEY IDENTITY(1,1),
  41.     quantity INT,
  42.     fkProduct INT,
  43.     CONSTRAINT fkStockProduct
  44.         FOREIGN KEY (fkProduct)
  45.         REFERENCES product(id)
  46. )
  47.  
  48. -- filling the table category
  49. INSERT INTO category (name)
  50.     VALUES ('hygiene');
  51.  
  52. INSERT INTO category (name)
  53.     VALUES ('beaute');
  54.  
  55. INSERT INTO category (name)
  56.     VALUES ('jouets');
  57.  
  58. INSERT INTO category (name)
  59.     VALUES ('loisir');
  60.  
  61.  
  62. -- filling table product
  63. INSERT INTO product (name, price)
  64.     VALUES ('dentrifice', 6.79);
  65.  
  66. INSERT INTO product (name, price)
  67.     VALUES ('vernis a ongles', 28.67);
  68.  
  69. INSERT INTO product (name, price)
  70.     VALUES ('papier toilette', 10.56);
  71.  
  72. INSERT INTO product (name, price)
  73.     VALUES ('savon de marseille', 2.58);
  74.  
  75. INSERT INTO product (name, price)
  76.     VALUES ('lego classic', 50.99);
  77.  
  78. INSERT INTO product (name, price)
  79.     VALUES ('poupon cry babies', 48.45);
  80.  
  81. INSERT INTO product (name, price)
  82.     VALUES ('simon', 47.33);
  83.  
  84. INSERT INTO product (name, price)
  85.     VALUES ('lego friends', 35.98);
  86.  
  87. INSERT INTO product (name, price)
  88.     VALUES ('velo', 200.45);
  89.  
  90.  
  91. -- filling table productCategory
  92. INSERT INTO productCategory (idProduct, idCategory)
  93.     VALUES (1, 1);
  94.  
  95. INSERT INTO productCategory (idProduct, idCategory)
  96.     VALUES (2, 1);
  97.  
  98. INSERT INTO productCategory (idProduct, idCategory)
  99.     VALUES (2, 2);
  100.  
  101. INSERT INTO productCategory (idProduct, idCategory)
  102.     VALUES (3, 1);
  103.  
  104. INSERT INTO productCategory (idProduct, idCategory)
  105.     VALUES (4, 1);
  106.  
  107. INSERT INTO productCategory (idProduct, idCategory)
  108.     VALUES (4, 2);
  109.  
  110. INSERT INTO productCategory (idProduct, idCategory)
  111.     VALUES (5, 3);
  112.  
  113. INSERT INTO productCategory (idProduct, idCategory)
  114.     VALUES (5, 4);
  115.  
  116. INSERT INTO productCategory (idProduct, idCategory)
  117.     VALUES (6, 3);
  118.  
  119. INSERT INTO productCategory (idProduct, idCategory)
  120.     VALUES (6, 4);
  121.  
  122. INSERT INTO productCategory (idProduct, idCategory)
  123.     VALUES (7, 3);
  124.  
  125. INSERT INTO productCategory (idProduct, idCategory)
  126.     VALUES (7, 4);
  127.  
  128. INSERT INTO productCategory (idProduct, idCategory)
  129.     VALUES (8, 3);
  130.  
  131. INSERT INTO productCategory (idProduct, idCategory)
  132.     VALUES (8, 4);
  133.  
  134. INSERT INTO productCategory (idProduct, idCategory)
  135.     VALUES (9, 3);
  136.  
  137. INSERT INTO productCategory (idProduct, idCategory)
  138.     VALUES (9, 4);
  139.  
  140.  
  141. -- filling table purchase
  142. INSERT INTO purchase (DATE, fkProduct)
  143.     VALUES ('2000-12-12', '2');
  144.  
  145. INSERT INTO purchase (DATE, fkProduct)
  146.     VALUES ('2024-01-01', '1');
  147.  
  148. INSERT INTO purchase (DATE, fkProduct)
  149.     VALUES ('2022-03-12', '3');
  150.  
  151. INSERT INTO purchase (DATE, fkProduct)
  152.     VALUES ('2024-01-02', '1');
  153.  
  154. INSERT INTO purchase (DATE, fkProduct)
  155.     VALUES ('2023-12-12', '5');
  156.  
  157. INSERT INTO purchase (DATE, fkProduct)
  158.     VALUES ('2024-09-05', '6');
  159.  
  160. INSERT INTO purchase (DATE, fkProduct)
  161.     VALUES ('2024-06-12', '6');
  162.  
  163. INSERT INTO purchase (DATE, fkProduct)
  164.     VALUES ('2023-11-05', '7');
  165.  
  166. INSERT INTO purchase (DATE, fkProduct)
  167.     VALUES ('2023-07-12', '6');
  168.  
  169. -- fill table stock
  170. INSERT INTO stock (quantity, fkProduct)
  171.     VALUES ('20', '6');
  172.  
  173. INSERT INTO stock (quantity, fkProduct)
  174.     VALUES ('12', '3');
  175.  
  176. INSERT INTO stock (quantity, fkProduct)
  177.     VALUES ('89', '1');
  178.  
  179. INSERT INTO stock (quantity, fkProduct)
  180.     VALUES ('11', '2');
  181.  
  182.  
  183. INSERT INTO stock (quantity, fkProduct)
  184.     VALUES ('28', '4');
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement