Advertisement
Guest User

Untitled

a guest
Jan 16th, 2019
98
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
SQL 5.85 KB | None | 0 0
  1. UNIVERSITY OF TECHNOLOGY, JAMAICA
  2.  
  3. DATABASE Administration Lab
  4.  
  5. ID#: 1403605
  6. Name: Marc-Anthony Latty
  7. GROUP: Bachelor OF Science IN Computing
  8. Week: 1
  9. Lab Report: 1
  10.  
  11.  
  12.  
  13. Exercise 2 – Creating a Customer TABLE
  14.  
  15. 2.1
  16. SQL Server VARCHAR stores 8000 bytes AND IS an available datatype while Oracle VARCHAR AND Varchar2 are reserved BY Oracle TO support distinction BETWEEN NULL AND empty string.
  17.  
  18. 2.2
  19. Dates IN SQL Server are IN the format : ‘YYYY/MM/DD’ while Oracle presents DATE IN : ‘DAY/MONTH/YEAR’ format
  20.  
  21. 2.3
  22. Solution:
  23.  
  24. --ORACLE
  25.  
  26. CREATE TABLE customer_1403605(
  27.     custID NUMBER(10),
  28.     firstName VARCHAR(255),
  29.     lastName VARCHAR(255),
  30.     dob DATE,
  31.     address VARCHAR(255),
  32.     phone VARCHAR(11)
  33. );
  34.  
  35. --SQL Server
  36.  
  37. CREATE TABLE customer_1403605(
  38.     custID INT(10),
  39.     firstName VARCHAR(255),
  40.     lastName VARCHAR(255),
  41.     dob DATE,
  42.     address VARCHAR(255),
  43.     phone VARCHAR(11)
  44. );
  45.  
  46. Observation:
  47.  
  48. Oracle uses a NUMBER datatype TO hold NUMERIC VALUES while SQL Server uses INT.
  49. The commands are the same FOR creating a TABLE.
  50.  
  51. 2.4
  52. Solution:
  53.  
  54. --Oracle
  55. ALTER TABLE customer_1403605 ADD CONSTRAINT customer_1403605_pk PRIMARY KEY (custID);
  56.  
  57. --SQL Server
  58. ALTER TABLE customer_1403605 ADD CONSTRAINT customer_1403605_pk PRIMARY KEY (custID);
  59.  
  60. Observation:
  61. The commands are the same FOR BOTH environments.
  62.  
  63.  
  64. Exercise 3 – Interacting WITH DATA (IN BOTH Environments)
  65.  
  66. 3.1
  67. Solution:
  68.  
  69. --Oracle
  70. INSERT INTO customer_1403605 (custID, firstName, lastName, dob, address, phone) VALUES
  71. (1,'Bill','Beannie',TO_DATE('1990/9/10','YYYY/MM/DD'), '10 Mango Drive', '8761234567');
  72.  
  73. INSERT INTO customer_1403605 (custID, firstName, lastName, dob, address, phone) VALUES
  74. (2,'Billy','Grace',TO_DATE('1991/02/12','YYYY/MM/DD'), '11 Mango Drive', '8761265746');
  75.  
  76. INSERT INTO customer_1403605 (custID, firstName, lastName, dob, address, phone) VALUES
  77. (3, 'Michael','James',TO_DATE('1993/11/12','YYYY/MM/DD'), '12 Mango Drive', '8763546537');
  78.  
  79. INSERT INTO customer_1403605 (custID, firstName, lastName, dob, address, phone) VALUES
  80. (4, 'MArc','Latty',TO_DATE('1996/01/17','YYYY/MM/DD'), '13 Mango Drive', '8768033388');
  81.  
  82. INSERT INTO customer_1403605 (custID, firstName, lastName, dob, address, phone) VALUES
  83. (5, 'Kat','Wallace',TO_DATE('2003/02/17','YYYY/MM/DD'), '14 Mango Drive', '8768574632');
  84.  
  85. --SQL Server
  86.  
  87. INSERT INTO customer_1403605 (custID, firstName, lastName, dob, address, phone) VALUES
  88. (1,'Bill','Beannie','1990/9/10', '10 Mango Drive', '8761234567');
  89.  
  90. INSERT INTO customer_1403605 (custID, firstName, lastName, dob, address, phone) VALUES
  91. (2,'Billy','Grace','1991/02/12', '11 Mango Drive', '8761265746');
  92.  
  93. INSERT INTO customer_1403605 (custID, firstName, lastName, dob, address, phone) VALUES
  94. (3, 'Michael','James','1993/11/12', '12 Mango Drive', '8763546537');
  95.  
  96. INSERT INTO customer_1403605 (custID, firstName, lastName, dob, address, phone) VALUES
  97. (4, 'MArc','Latty','1996/01/17', '13 Mango Drive', '8768033388');
  98.  
  99. INSERT INTO customer_1403605 (custID, firstName, lastName, dob, address, phone) VALUES
  100. (5, 'Kat','Wallace','2003/02/17', '14 Mango Drive', '8768574632');
  101.  
  102. Observations:
  103.  
  104. DATE IN ORACLE requires you TO USE the TO_DATE FUNCTION, while IN SQL Server you could enter it AS a string literal.
  105.  
  106. 3.2
  107. Solution:
  108.  
  109. --Oracle
  110.  
  111. commit;
  112.  
  113. SELECT * FROM customer_1403605;
  114.  
  115.  
  116. 3.3
  117. Solution:
  118. SELECT * FROM customer_1402620 WHERE custid = MAX(custid);
  119.  
  120. 3.4
  121. Solution:
  122. SELECT * FROM customer_1402620 WHERE custid = MIN(custid);
  123.  
  124. 3.5
  125. Solution:
  126. SELECT * FROM customer_1402620 WHERE custid = (SELECT MAX(custid) FROM customer_1402620) OR custid = (SELECT MIN(custid) FROM customer_1402620);
  127.  
  128. 3.6
  129. Solution:
  130. DELETE FROM customer_1402620 WHERE custid = (SELECT MAX(custid) FROM customer_1402620);
  131.  
  132. 3.7
  133. Solution:
  134. DELETE FROM customer_1402620 WHERE custid = (SELECT MIN(custid) FROM customer_1402620);
  135.  
  136. 3.8
  137. Solution:
  138. ROLLBACK;
  139.  
  140. Observation:
  141. The LAST TRANSACTION was undone.
  142.  
  143. 3.9
  144. Solution:
  145. ALTER TABLE customer_1402620 ADD gender CHAR(1);
  146.  
  147. 3.10
  148. Solution:
  149. UPDATE customer_1402620 SET gender='M' WHERE custid IN (SELECT custid FROM
  150. (SELECT custid FROM customer_1402620 ORDER BY custid ASC) WHERE rownum <= 4);
  151.  
  152.  
  153.  
  154. 3.11
  155. Solution:
  156. UPDATE customer_1402620 SET gender=’F’ WHERE gender IS NULL;
  157.  
  158. 3.12
  159. Solution:
  160. ALTER TABLE customer_1402620 MODIFY firstName varchar2(100);
  161.  
  162. Exercise 4 – Searching the System TABLES (Oracle ONLY)
  163.  
  164. 4.0
  165. Example 1
  166. Solution:
  167. SELECT TABLE_NAME FROM All_Tables WHERE TABLE_NAME LIKE ‘%CUSTOMER_1402620%’ GROUP BY TABLE_NAME;
  168.  
  169. Example 2
  170. Solution:
  171. SELECT TABLE_NAME, COUNT(column_name) FROM all_tab_columns WHERE TABLE_NAME LIKE ‘%CUSTOMER_1402620%’ GROUP BY TABLE_NAME;
  172.  
  173. 4.1
  174. Solution:
  175. DESC USER_TABLES;
  176.  
  177. Observations:
  178. the DESC command RETURNS the COLUMN definitions;
  179.  
  180. 4.2
  181. Solution:
  182. SELECT * FROM USER_TABLES WHERE TABLE_NAME LIKE ‘%CUSTOMER_1402620%’;
  183.  
  184. Observation:
  185. You have TO USE uppercase since Oracle stores ALL TABLE names IN UPPER CASE.
  186.  
  187. 4.3
  188. Observation:
  189. The dictionary TABLE has a TABLE_NAME AND comments FIELD
  190.  
  191. 4.4
  192. Solution:
  193. SELECT COUNT(TABLE_NAME) FROM dict;
  194.  
  195. Observation:
  196. Total amount OF TABLES: 2553
  197.  
  198. 4.5
  199. Solution:
  200. SELECT constraint_name, constraint_type, STATUS, TABLE_NAME FROM user_constraints ;
  201. Observation:
  202. It shows ALL the constraints that are ON TABLES AS well AS their meta-DATA
  203.  
  204. 4.6
  205. Solution:
  206. DESC ALL_OBJECTS;
  207.  
  208. FIELDS:
  209.  
  210. OWNER
  211. OBJECT_NAME
  212. SUBOBJECT_NAME
  213. OBJECT_ID
  214. DATA_OBJECT_ID
  215. OBJECT_TYPE
  216. CREATED
  217. LAST_DDL_TIME
  218. TIMESTAMP
  219. STATUS
  220. TEMPORARY
  221. GENERATED
  222. SECONDARY
  223. NAMESPACE
  224. EDITION_NAME
  225.  
  226. DESC ALL_VIEWS;
  227.  
  228. FIELDS:
  229.  
  230.  OWNER
  231.  VIEW_NAME
  232.  TEXT_LENGTH
  233.  TEXT
  234.  TYPE_TEXT_LENGTH
  235.  TYPE_TEXT
  236.  OID_TEXT_LENGTH
  237.  OID_TEXT
  238.  VIEW_TYPE_OWNER
  239.  VIEW_TYPE
  240.  SUPERVIEW_NAME
  241.  EDITIONING_VIEW
  242.  READ_ONLY
  243.  
  244. DESC DBA_ERRORS;
  245.  
  246. FIELDS:
  247.  
  248. OWNER
  249. NAME
  250. TYPE
  251. SEQUENCE
  252. LINE
  253. POSITION
  254. TEXT
  255. ATTRIBUTE
  256. MESSAGE_NUMBER
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement