1. /* COMP 1278 Fall 2010
  2.   Assignment 2
  3.   Mike Keneqa and Fahad Zaidi
  4.   Oct 27, 2010
  5. */
  6.  
  7. SPOOL asg2.log
  8. SET ECHO ON
  9.  
  10. DROP TABLE person;
  11. DROP TABLE person_address;
  12. DROP TABLE person_phone;
  13. DROP TABLE person_email;
  14. DROP TABLE employee;
  15. DROP TABLE customer;
  16. DROP TABLE reward;
  17. DROP TABLE bike;
  18. DROP TABLE purchases;
  19. DROP TABLE tailor_made;
  20. DROP TABLE repair;
  21. DROP TABLE repair_shop_time;
  22. DROP TABLE repair_part;
  23. DROP TABLE repair_service;
  24. DROP TABLE repair_note;
  25.  
  26. -- still questioning
  27. DROP TABLE uses_components;
  28. DROP TABLE build_a_bike;
  29.  
  30. --not sure abou this one
  31. CREATE TABLE uses_component(
  32. build_a_bike_id NUMBER PRIMARY KEY,
  33. component_id NUMBER NOT NULL
  34. );
  35.  
  36. CREATE TABLE repair_note(
  37. dateTime CURRENT_TIMESTAMP,
  38. repair_id NUMBER NOT NULL,
  39. person_id NUMBER NOT NULL,
  40. note VARCHAR2(100);
  41. );
  42.  
  43. CREATE TABLE repair_service(
  44. repair_id NUMBER PRIMARY KEY,
  45. description VARCHAR2(100),
  46. service_time CURRENT_TIMESTAMP
  47. );
  48.  
  49. CREATE TABLE repair_part(
  50. repair_id NUMBER PRIMARY KEY,
  51. description VARCHAR2(100),
  52. quantity NUMBER,
  53. price NUMBER
  54. );
  55.  
  56. CREATE TABLE repair_shop_time(
  57. repair_id NUMBER PRIMARY KEY,
  58. description VARCHAR2(50),
  59. shop_time CURRENT_TIMESTAMP
  60. );
  61.  
  62. CREATE TABLE repair(
  63. repair_id NUMBER PRIMARY KEY,
  64. emp_id NUMBER NOT NULL,
  65. cust_id NUMBER NOT NULL,
  66. date_in DATE,
  67. date_out DATE
  68. );
  69.  
  70. --not sure about this one
  71. CREATE TABLE build_a_bike(
  72. bike_id NUMBER PRIMARY KEY,
  73. person_id NUMBER NOT NULL
  74. );
  75.  
  76. CREATE TABLE tailor_made(
  77. bike_id NUMBER PRIMARY KEY,
  78. price NUMBER NOT NULL,
  79. trim_level VARCHAR2(5)
  80. );
  81.  
  82. CREATE TABLE purchase(
  83. person_id NUMBER PRIMARY KEY,
  84. bike_id NUMBER,
  85. purchase_date DATE
  86. );
  87.  
  88. CREATE TABLE bike(
  89. bike_id NUMBER PRIMARY KEY,
  90. bike_style VARCHAR2(15) NOT NULL,
  91. serial_number NUMBER NOT NULL,
  92. make VARCHAR2(15) NOT NULL,
  93. model VARCHAR2(15) NOT NULL,
  94. colour VARCHAR2(15) NOT NULL,
  95. bike_size CHAR NOT NULL
  96. );
  97.  
  98. CREATE TABLE reward(
  99. reward_id NUMBER PRIMARY KEY,
  100. person_id NUMBER,
  101. reward_date DATE,
  102. type_of_sale CHAR,
  103. points NUMBER
  104. );
  105.  
  106. CREATE TABLE customer(
  107. person_id NUMBER PRIMARY KEY,
  108. rewards_status CHAR,
  109. );
  110.  
  111. CREATE TABLE employee(
  112. person_id NUMBER PRIMARY KEY,
  113. sin_number NUMBER,
  114. hire_date DATE,
  115. salary NUMBER
  116. );
  117.  
  118. CREATE TABLE address(
  119. person_id NUMBER PRIMARY KEY,
  120. add_type CHAR,
  121. street VARCHAR2(15),
  122. city VARCHAR2(15),
  123. pCode VARCHAR2(6)
  124. );
  125.  
  126. CREATE TABLE person(
  127. person_id NUMBER PRIMARY KEY,
  128. first_name VARCHAR2(20),
  129. last_name VARCHAR2(30)
  130. );
  131.  
  132. CREATE TABLE email(
  133. email_id NUMBER PRIMARY KEY,
  134. first_name VARCHAR2(20),
  135. last_name VARCHAR2(30)
  136. );
  137.  
  138.  
  139. CREATE TABLE phone(
  140. person_id NUMBER,
  141. ph_number NUMBER,
  142. ph_type CHAR;
  143. );
  144.  
  145. CREATE TABLE address(
  146. person_id NUMBER,
  147. ph_number NUMBER,
  148. ph_type CHAR;
  149.  
  150. /* first_name VARCHAR2(50),
  151. last_name VARCHAR2(50) NOT NULL,
  152. birth_date DATE CHECK (birth_date > '01-JAN-1890'),
  153. position VARCHAR2(50),
  154. department_id NUMBER REFERENCES department(dept_id) */
  155. );
  156.  
  157.  
  158. SET ECHO off
  159. SPOOL off
  160.