Advertisement
Guest User

Untitled

a guest
Jul 22nd, 2017
65
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 12.26 KB | None | 0 0
  1. create or replace PACKAGE BEDRIJF_PKG AS
  2.  
  3. TYPE CURSOR_TYPE IS REF CURSOR;
  4. PROCEDURE getbedrijf(bedrijf_cursor OUT BEDRIJF_PKG.CURSOR_TYPE);
  5. PROCEDURE createbedrijf(p_naam bedrijven.naam%TYPE,
  6. p_adres bedrijven.ADRES%TYPE,
  7. p_postcode bedrijven.postcode%TYPE,
  8. p_tel bedrijven.tel%TYPE,
  9. p_email bedrijven.email%TYPE,
  10. p_site bedrijven.WEBSITE%TYPE,
  11. p_land bedrijven.land%TYPE);
  12.  
  13. END BEDRIJF_PKG;
  14. /
  15. create or replace PACKAGE CONTACTEN_PKG AS
  16.  
  17. PROCEDURE CREATE_CONTACTEN(p_aanspr contacten.aanspreektitel%TYPE,
  18. p_naam contacten.naam%TYPE,
  19. p_voornaam contacten.voornaam%TYPE,
  20. p_bedrijf contacten.bedrijf%TYPE,
  21. p_functie contacten.functie%TYPE,
  22. p_tel contacten.tel%TYPE,
  23. p_gsm contacten.gsm%TYPE,
  24. p_taal contacten.taal%TYPE);
  25.  
  26. PROCEDURE GETCONTACTEN(p_contact IN bedrijven.bedrijf_id%TYPE,
  27. p_aanspr OUT contacten.aanspreektitel%TYPE,
  28. p_naam OUT contacten.naam%TYPE,
  29. p_voornaam OUT contacten.voornaam%TYPE,
  30. p_functie OUT contacten.functie%TYPE,
  31. p_tel OUT contacten.tel%TYPE,
  32. p_gsm OUT contacten.gsm%TYPE,
  33. p_taal OUT contacten.taal%TYPE);
  34. /* TODO enter package declarations (types, exceptions, methods etc) here */
  35.  
  36. END CONTACTEN_PKG;
  37. /
  38. create or replace PACKAGE CONTRACT_PKG AS
  39.  
  40. TYPE CURSOR_TYPE IS REF CURSOR;
  41. PROCEDURE getcontract(p_studnr IN studenten.studentnr%TYPE,
  42. contract_cursor OUT CONTRACT_PKG.CURSOR_TYPE);
  43.  
  44. PROCEDURE createcontract(p_opmaakdtm contract.opmaakdatum%TYPE,
  45. p_stud contract.student%TYPE,
  46. p_startdtm contract.startdatum%TYPE,
  47. p_einddtm contract.einddatum%TYPE,
  48. p_contact contract.contact%TYPE);
  49.  
  50. END CONTRACT_PKG;
  51. /
  52. create or replace PACKAGE STAGEPLAATS_PKG AS
  53.  
  54. TYPE CURSOR_TYPE IS REF CURSOR;
  55. PROCEDURE getstageplaats(stage_cursor OUT STAGEPLAATS_PKG.CURSOR_TYPE,
  56. p_bedrijf IN bedrijven.bedrijf_id%TYPE,
  57. p_opleiding IN opleiding.opleiding_id%TYPE);
  58.  
  59. PROCEDURE createstageplaats(p_bedrijf stageplaats.bedrijf%TYPE,
  60. p_opleiding stageplaats.opleiding%TYPE,
  61. p_onderwerp stageplaats.onderwerp%TYPE,
  62. p_aantal stageplaats.aantal%TYPE,
  63. p_beschrijving stageplaats.beschrijving%TYPE);
  64.  
  65. PROCEDURE getvalidate(val_cursor OUT STAGEPLAATS_PKG.CURSOR_TYPE);
  66. END STAGEPLAATS_PKG;
  67. /
  68. create or replace PACKAGE STUDENT_PKG AS
  69. TYPE CURSOR_TYPE IS REF CURSOR;
  70. PROCEDURE GETSTUDENT(p_studnr IN studenten.studentnr%TYPE,
  71. student_cursor OUT STUDENT_PKG.CURSOR_TYPE);
  72. PROCEDURE CREATESTUDENT(p_studnr studenten.studentnr%TYPE,
  73. p_naam studenten.naam%TYPE,
  74. p_voornaam studenten.voornaam%TYPE,
  75. p_adres studenten.adres%TYPE,
  76. p_postcode studenten.postcode%TYPE,
  77. p_email studenten.email%TYPE,
  78. p_tel studenten.tel%TYPE,
  79. p_gsm studenten.gsm%TYPE,
  80. p_rijksnr studenten.rijksnr%TYPE,
  81. p_geboorte studenten.geboorte%TYPE,
  82. p_stage studenten.stage%TYPE,
  83. p_pass studenten.wachtwoord%TYPE,
  84. p_opleiding studenten.opleiding%TYPE,
  85. p_stageplaats studenten.stageplaats%TYPE);
  86. END STUDENT_PKG;
  87. /
  88.  
  89. create or replace PACKAGE LEERKRACHT_PKG AS
  90.  
  91. PROCEDURE getwachtwoord(p_mail IN stageleerkrachten.email%TYPE,
  92. p_pass OUT stageleerkrachten.wachtwoord%TYPE);
  93.  
  94. PROCEDURE getopleiding(p_mail IN stageleerkrachten.email%TYPE,
  95. p_naam OUT opleiding.naam%TYPE);
  96.  
  97. END LEERKRACHT_PKG;
  98. /
  99.  
  100. create or replace PACKAGE BODY BEDRIJF_PKG AS
  101.  
  102. PROCEDURE getbedrijf(bedrijf_cursor OUT BEDRIJF_PKG.CURSOR_TYPE) AS
  103. BEGIN
  104. OPEN bedrijf_cursor FOR
  105. SELECT naam
  106. FROM bedrijven;
  107. END getbedrijf;
  108.  
  109. PROCEDURE createbedrijf(p_naam bedrijven.naam%TYPE,
  110. p_adres bedrijven.ADRES%TYPE,
  111. p_postcode bedrijven.postcode%TYPE,
  112. p_tel bedrijven.tel%TYPE,
  113. p_email bedrijven.email%TYPE,
  114. p_site bedrijven.WEBSITE%TYPE,
  115. p_land bedrijven.land%TYPE) AS
  116. BEGIN
  117. INSERT INTO bedrijven(bedrijf_id, naam, adres, postcode, tel, email, website, land)
  118. VALUES (bedr_id_seq.NEXTVAL, p_naam, p_adres, p_postcode, p_tel, p_email, p_site, p_land);
  119. COMMIT;
  120. END createbedrijf;
  121.  
  122. END BEDRIJF_PKG;
  123. /
  124. create or replace PACKAGE BODY CONTACTEN_PKG AS
  125.  
  126. PROCEDURE CREATE_CONTACTEN(p_aanspr contacten.aanspreektitel%TYPE,
  127. p_naam contacten.naam%TYPE,
  128. p_voornaam contacten.voornaam%TYPE,
  129. p_bedrijf contacten.bedrijf%TYPE,
  130. p_functie contacten.functie%TYPE,
  131. p_tel contacten.tel%TYPE,
  132. p_gsm contacten.gsm%TYPE,
  133. p_taal contacten.taal%TYPE) AS
  134. BEGIN
  135. INSERT INTO contacten(contact_id, aanspreektitel, naam, voornaam, bedrijf, functie, tel, gsm, taal)
  136. VALUES (cont_id_seq.NEXTVAL, p_aanspr, p_naam, p_voornaam, p_bedrijf, p_functie, p_tel, p_gsm, p_taal);
  137. COMMIT;
  138. END CREATE_CONTACTEN;
  139.  
  140. PROCEDURE GETCONTACTEN(p_contact IN bedrijven.bedrijf_id%TYPE,
  141. p_aanspr OUT contacten.aanspreektitel%TYPE,
  142. p_naam OUT contacten.naam%TYPE,
  143. p_voornaam OUT contacten.voornaam%TYPE,
  144. p_functie OUT contacten.functie%TYPE,
  145. p_tel OUT contacten.tel%TYPE,
  146. p_gsm OUT contacten.gsm%TYPE,
  147. p_taal OUT contacten.taal%TYPE) AS
  148. BEGIN
  149. SELECT aanspreektitel, naam, voornaam, functie, tel, gsm, taal
  150. INTO p_aanspr, p_naam, p_voornaam, p_functie, p_tel, p_gsm, p_taal
  151. FROM contacten
  152. WHERE contacten.bedrijf = p_contact;
  153. END GETCONTACTEN;
  154.  
  155. END CONTACTEN_PKG;
  156. /
  157. create or replace PACKAGE BODY CONTRACT_PKG AS
  158.  
  159. PROCEDURE getcontract(p_studnr IN studenten.studentnr%TYPE,
  160. contract_cursor OUT CONTRACT_PKG.CURSOR_TYPE) AS
  161. BEGIN
  162. OPEN contract_cursor FOR
  163. SELECT c.contract_id, c.opmaakdatum, c.startdatum, c.einddatum, con.naam, con.voornaam, b.naam
  164. FROM contract c ,contacten con, bedrijven b
  165. WHERE c.student = p_studnr
  166. AND c.contact = con.contact_id
  167. AND con.bedrijf = b.bedrijf_id;
  168. END getcontract;
  169.  
  170. PROCEDURE createcontract(p_opmaakdtm contract.opmaakdatum%TYPE,
  171. p_stud contract.student%TYPE,
  172. p_startdtm contract.startdatum%TYPE,
  173. p_einddtm contract.einddatum%TYPE,
  174. p_contact contract.contact%TYPE) AS
  175. BEGIN
  176. INSERT INTO contract(contract_id, student, opmaakdatum, startdatum, einddatum, contact)
  177. VALUES(contr_id_seq.NEXTVAL, p_stud, p_opmaakdtm, p_startdtm, p_einddtm, p_contact);
  178. COMMIT;
  179. END createcontract;
  180.  
  181. END CONTRACT_PKG;
  182. /
  183. create or replace PACKAGE BODY STAGEPLAATS_PKG AS
  184.  
  185. PROCEDURE getstageplaats(stage_cursor OUT STAGEPLAATS_PKG.CURSOR_TYPE,
  186. p_bedrijf IN bedrijven.bedrijf_id%TYPE,
  187. p_opleiding IN opleiding.opleiding_id%TYPE) AS
  188. BEGIN
  189. OPEN stage_cursor FOR
  190. SELECT stage_id, bedrijf, opleiding, onderwerp, aantal, beschrijving
  191. FROM stageplaats
  192. WHERE bedrijf = p_bedrijf
  193. AND opleiding = p_opleiding;
  194. END getstageplaats;
  195.  
  196. PROCEDURE createstageplaats(p_bedrijf stageplaats.bedrijf%TYPE,
  197. p_opleiding stageplaats.opleiding%TYPE,
  198. p_onderwerp stageplaats.onderwerp%TYPE,
  199. p_aantal stageplaats.aantal%TYPE,
  200. p_beschrijving stageplaats.beschrijving%TYPE) AS
  201. BEGIN
  202. INSERT INTO stageplaats(stage_id, bedrijf, opleiding, onderwerp, aantal, beschrijving)
  203. VALUES(stag_id_seq.NEXTVAL, p_bedrijf, p_opleiding, p_onderwerp, p_aantal, p_beschrijving);
  204. COMMIT;
  205. END createstageplaats;
  206.  
  207. PROCEDURE getvalidate(val_cursor OUT STAGEPLAATS_PKG.CURSOR_TYPE) AS
  208.  
  209. BEGIN
  210. OPEN val_cursor FOR
  211. SELECT stud.naam, stud.voornaam, o.naam, b.naam
  212. FROM studenten stud, bedrijven b, stageplaats s, opleiding o
  213. WHERE stud.stage = 1
  214. AND stud.opleiding = o.OPLEIDING_ID
  215. AND s.bedrijf = b.bedrijf_id
  216. AND stud.stageplaats = s.stage_id;
  217. END getvalidate;
  218.  
  219. END STAGEPLAATS_PKG;
  220. /
  221. create or replace PACKAGE BODY STUDENT_PKG AS
  222.  
  223. PROCEDURE GETSTUDENT(p_studnr IN studenten.studentnr%TYPE,
  224. student_cursor OUT STUDENT_PKG.CURSOR_TYPE) AS
  225. BEGIN
  226. OPEN student_cursor FOR
  227. SELECT s.naam, s.voornaam, s.adres, s.postcode, p.gemeente, s.email, s.tel, s.gsm, s.rijksnr, s.geboorte, s.wachtwoord, o.naam, s.stageplaats
  228. FROM studenten s, postcodes p, opleiding o
  229. WHERE s.studentnr = p_studnr
  230. AND s.postcode = p.code
  231. AND s.opleiding = o.OPLEIDING_ID;
  232. END GETSTUDENT;
  233.  
  234. PROCEDURE CREATESTUDENT(p_studnr studenten.studentnr%TYPE,
  235. p_naam studenten.naam%TYPE,
  236. p_voornaam studenten.voornaam%TYPE,
  237. p_adres studenten.adres%TYPE,
  238. p_postcode studenten.postcode%TYPE,
  239. p_email studenten.email%TYPE,
  240. p_tel studenten.tel%TYPE,
  241. p_gsm studenten.gsm%TYPE,
  242. p_rijksnr studenten.rijksnr%TYPE,
  243. p_geboorte studenten.geboorte%TYPE,
  244. p_stage studenten.stage%TYPE,
  245. p_pass studenten.wachtwoord%TYPE,
  246. p_opleiding studenten.opleiding%TYPE,
  247. p_stageplaats studenten.stageplaats%TYPE) AS
  248. BEGIN
  249. INSERT INTO studenten(studentnr, naam, voornaam, adres,
  250. postcode, email, tel, gsm, rijksnr,
  251. geboorte, stage, wachtwoord, opleiding, stageplaats)
  252. VALUES(p_studnr, p_naam, p_voornaam, p_adres, p_postcode,
  253. p_email, p_tel, p_gsm, p_rijksnr, p_geboorte,
  254. p_stage, p_pass, p_opleiding, p_stageplaats);
  255. COMMIT;
  256. END CREATESTUDENT;
  257.  
  258. END STUDENT_PKG;
  259. /
  260. CREATE OR REPLACE PACKAGE BODY LEERKRACHT_PKG AS
  261.  
  262. PROCEDURE getwachtwoord(p_mail IN stageleerkrachten.email%TYPE,
  263. p_pass OUT stageleerkrachten.wachtwoord%TYPE) AS
  264. BEGIN
  265. SELECT wachtwoord
  266. INTO p_pass
  267. FROM stageleerkrachten
  268. WHERE email = p_mail;
  269. END getwachtwoord;
  270.  
  271. PROCEDURE getopleiding(p_mail IN stageleerkrachten.email%TYPE,
  272. p_naam OUT opleiding.naam%TYPE) AS
  273. BEGIN
  274. SELECT o.naam
  275. INTO p_naam
  276. FROM stageleerkrachten s, opleiding o
  277. WHERE email = p_mail
  278. AND s.opleiding = o.opleiding_id;
  279. END getopleiding;
  280. END LEERKRACHT_PKG;
  281. /
  282. CREATE OR REPLACE PROCEDURE getaantalstats
  283. (p_jaar IN stats.jaar%TYPE,
  284. p_opleiding OUT opleiding.naam%TYPE,
  285. p_onderwerp OUT onderwerp.naam%TYPE)
  286. IS
  287. BEGIN
  288. SELECT opl.naam, ond.naam
  289. INTO p_opleiding, p_onderwerp
  290. FROM opleiding opl, onderwerp ond, stats s
  291. WHERE s.opleiding = opl.opleiding_id
  292. AND s.onderwerp = ond.onderwerp_id
  293. AND s.jaar = p_jaar;
  294. END getaantalstats;
  295. /
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement