Advertisement
Guest User

Untitled

a guest
Sep 25th, 2017
58
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.12 KB | None | 0 0
  1. CREATE TABLE CUSTOMER (
  2. Id CHAR(9), -- Id must be 9 digits long
  3. Name CHAR(50),
  4. Address CHAR(50),
  5. --CHECK (0 <= Id AND Id >= 999999999),
  6. PRIMARY KEY(Id), -- Id acts as an identifier
  7. UNIQUE(Name, Address) -- Name, Address tuple is a candidate key
  8. )
  9.  
  10. CREATE TABLE SUPPLIER (
  11. Id CHAR(9),
  12. Name CHAR(50),
  13. Address CHAR(50),
  14. --CHECK (0 <= Id AND Id >= 999999999),
  15. PRIMARY KEY(Id), -- Id acts as an identifier
  16. UNIQUE(Name, Address) -- Name, Address tuple is a candidate key
  17. )
  18.  
  19. CREATE TABLE PRODUCT (
  20. PartNumber INTEGER,
  21. Name CHAR(50),
  22. CHECK (0 <= PartNumber AND PartNumber >= 999999),
  23. PRIMARY KEY(PartNumber)
  24. )
  25.  
  26. CREATE TABLE CONTRACTS (
  27. SupplierId CHAR(9),
  28. CustomerId CHAR(9),
  29. ProductId INTEGER,
  30. ProductQuantity INTEGER,
  31. Price INTEGER,
  32. FOREIGN KEY (SupplierID) REFERENCES SUPPLIER(Id),
  33. FOREIGN KEY (CustomerId) REFERENCES CUSTOMER(Id),
  34. FOREIGN KEY (ProductId) REFERENCES PRODUCT(PartNumber)
  35. )
  36.  
  37. CREATE ASSERTION ThereMustBeMoreContractsThanSuppliers
  38. CHECK (SELECT COUNT (*) FROM CONTRACTS >= SELECT COUNT (*) FROM SUPPLIERS)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement