Advertisement
Guest User

Untitled

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