Advertisement
Guest User

ver 2

a guest
Oct 23rd, 2014
126
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
SQL 3.98 KB | None | 0 0
  1.  
  2. DROP TABLE CallTextCharge CASCADE CONSTRAINTS PURGE;
  3.  
  4. DROP TABLE OrderInStore CASCADE CONSTRAINTS PURGE;
  5.  
  6. DROP TABLE DataCharge CASCADE CONSTRAINTS PURGE;
  7.  
  8. DROP TABLE CustomerAccount CASCADE CONSTRAINTS PURGE;
  9.  
  10. DROP TABLE DeviceReturns CASCADE CONSTRAINTS PURGE;
  11.  
  12. DROP TABLE PhoneStore CASCADE CONSTRAINTS PURGE;
  13.  
  14. DROP TABLE OrderOnline CASCADE CONSTRAINTS PURGE;
  15.  
  16. DROP TABLE Phone CASCADE CONSTRAINTS PURGE;
  17.  
  18. DROP TABLE Customer CASCADE CONSTRAINTS PURGE;
  19.  
  20. CREATE TABLE Customer
  21. (
  22.     customer_no          CHAR(18) NOT NULL ,
  23.     name                 VARCHAR2(20) NULL ,
  24.     address              VARCHAR2(20) NULL ,
  25.     email                VARCHAR2(20) NULL ,
  26. CONSTRAINT  XPKCustomer PRIMARY KEY (customer_no)
  27. );
  28.  
  29. CREATE TABLE Phone
  30. (
  31.     serial_no            VARCHAR2(20) NOT NULL ,
  32.     customer_no          CHAR(18) NOT NULL ,
  33.     manufacturer         CHAR(18) NULL ,
  34.     model                VARCHAR2(20) NULL ,
  35.     description          VARCHAR2(20) NULL ,
  36.     credit_offer         VARCHAR2(20) NULL ,
  37. CONSTRAINT  XPKPhone PRIMARY KEY (serial_no,customer_no),
  38. CONSTRAINT R_37 FOREIGN KEY (customer_no) REFERENCES Customer (customer_no)
  39. );
  40.  
  41. CREATE TABLE OrderOnline
  42. (
  43.     customer_no          CHAR(18) NOT NULL ,
  44.     serial_no            VARCHAR2(20) NOT NULL ,
  45.     dispatch_date        DATE NULL ,
  46.     purchase_date        VARCHAR2(20) NULL ,
  47.     backroom_staff_member CHAR(18) NULL ,
  48. CONSTRAINT  XPKOrderOnline PRIMARY KEY (customer_no,serial_no),
  49. CONSTRAINT R_20 FOREIGN KEY (serial_no, customer_no) REFERENCES Phone (serial_no, customer_no),
  50. CONSTRAINT R_22 FOREIGN KEY (customer_no) REFERENCES Customer (customer_no)
  51. );
  52.  
  53. CREATE TABLE PhoneStore
  54. (
  55.     store_no             VARCHAR2(20) NOT NULL ,
  56.     address              VARCHAR2(20) NULL ,
  57.     phone                VARCHAR2(20) NULL ,
  58. CONSTRAINT  XPKStore PRIMARY KEY (store_no)
  59. );
  60.  
  61. CREATE TABLE DeviceReturns
  62. (
  63.     store_no             VARCHAR2(20) NOT NULL ,
  64.     serial_no            VARCHAR2(20) NOT NULL ,
  65.     customer_no          VARCHAR2(20) NOT NULL ,
  66.     fault_description    VARCHAR2(40) NULL ,
  67.     date_returned        DATE NULL ,
  68. CONSTRAINT  XPKReturns PRIMARY KEY (store_no,serial_no,customer_no),
  69. CONSTRAINT R_13 FOREIGN KEY (store_no) REFERENCES PhoneStore (store_no),
  70. CONSTRAINT R_14 FOREIGN KEY (serial_no, customer_no) REFERENCES Phone (serial_no, customer_no)
  71. );
  72.  
  73. CREATE TABLE CustomerAccount
  74. (
  75.     customer_no          CHAR(18) NOT NULL ,
  76.     phone_no             VARCHAR2(20) NULL ,
  77.     rental_charge        FLOAT NULL ,
  78.     contract_length      INTEGER NULL ,
  79.     billing_period       INTEGER NULL ,
  80. CONSTRAINT  XPKAccount PRIMARY KEY (customer_no),
  81. CONSTRAINT R_43 FOREIGN KEY (customer_no) REFERENCES Customer (customer_no)
  82. );
  83.  
  84. CREATE TABLE DataCharge
  85. (
  86.     customer_no          CHAR(18) NOT NULL ,
  87.     cost_per_unit        FLOAT NULL ,
  88.     roaming_charge       FLOAT NULL ,
  89. CONSTRAINT  XPKData PRIMARY KEY (customer_no),
  90. CONSTRAINT R_10 FOREIGN KEY (customer_no) REFERENCES CustomerAccount (customer_no)
  91. );
  92.  
  93. CREATE TABLE OrderInStore
  94. (
  95.     store_no             VARCHAR2(20) NOT NULL ,
  96.     customer_no          CHAR(18) NOT NULL ,
  97.     serial_no            VARCHAR2(20) NOT NULL ,
  98.     purchase_date        DATE NULL ,
  99.     price                FLOAT NULL ,
  100.     credit               FLOAT NULL ,
  101.     staff_member         VARCHAR2(20) NULL ,
  102. CONSTRAINT  XPKOrderInStore PRIMARY KEY (store_no,customer_no,serial_no),
  103. CONSTRAINT R_39 FOREIGN KEY (store_no) REFERENCES PhoneStore (store_no),
  104. CONSTRAINT R_40 FOREIGN KEY (customer_no) REFERENCES Customer (customer_no),
  105. CONSTRAINT R_42 FOREIGN KEY (serial_no, customer_no) REFERENCES Phone (serial_no, customer_no)
  106. );
  107.  
  108. CREATE TABLE CallTextCharge
  109. (
  110.     contact_number       VARCHAR2(20) NOT NULL ,
  111.     customer_no          CHAR(18) NOT NULL ,
  112.     provider             VARCHAR2(20) NULL ,
  113.     duration             FLOAT NULL ,
  114.     cost_per_unit        FLOAT NULL ,
  115.     roaming_charge       FLOAT NULL ,
  116. CONSTRAINT  XPKCallsAndTexts PRIMARY KEY (contact_number,customer_no),
  117. CONSTRAINT R_11 FOREIGN KEY (customer_no) REFERENCES CustomerAccount (customer_no)
  118. );
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement