Advertisement
Guest User

Untitled

a guest
Dec 15th, 2018
85
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PL/SQL 1.82 KB | None | 0 0
  1. CREATE TABLE lottorad(
  2. nr NUMBER(6));
  3. CREATE TABLE lottofacit(
  4. nr NUMBER(6));
  5. INSERT INTO lottofacit VALUES(3);
  6. INSERT INTO lottofacit VALUES(7);
  7. INSERT INTO lottofacit VALUES(11);
  8. INSERT INTO lottofacit VALUES(35);
  9. INSERT INTO lottofacit VALUES(12);
  10. INSERT INTO lottofacit VALUES(5);
  11. INSERT INTO lottofacit VALUES(24);
  12. COMMIT;
  13.  
  14. SELECT *
  15. FROM lottofacit;
  16.  
  17. CREATE OR REPLACE PACKAGE lotto
  18. AS
  19. END;
  20. /
  21.  
  22.  
  23. ----- Skapar Package Body -----
  24.  
  25. CREATE OR REPLACE PACKAGE BODY lotto
  26. AS
  27.     ------------Slumpar heltal (1-35)--------------
  28.     FUNCTION skapaNyttLottoNr
  29.     RETURN NUMBER
  30.     AS  
  31.     lottoNr NUMBER(2);  
  32.     BEGIN
  33.         SELECT ROUND(DBMS_RANDOM.VALUE(1,35),0)
  34.         INTO lottoNr
  35.         FROM dual;
  36.         RETURN lottoNr;
  37.     END skapaNyttLottoNr;
  38.    
  39.    
  40.     ------------Tömmer lottorad------------
  41.     PROCEDURE clear_table
  42.     AS
  43.     v_nr NUMBER;
  44.  
  45.     BEGIN
  46.         SELECT COUNT(*)
  47.         INTO v_nr
  48.         FROM lottorad;
  49.    
  50.         IF v_nr != 0
  51.            THEN DELETE FROM lottorad;
  52.         END IF;
  53.     END clear_table;
  54.    
  55.    
  56.     ------------Procedur skapaLottoRad------------------
  57.     PROCEDURE skapaLottoRad
  58.     AS
  59.     v_lottoNr lottorad.nr%TYPE;
  60.     v_count NUMBER;
  61.     v_nr NUMBER;
  62.  
  63.     BEGIN
  64.         v_count := 0;
  65.    
  66.         SELECT COUNT(nr)
  67.         INTO v_nr
  68.         FROM lottorad;
  69.    
  70.    
  71.         WHILE v_count < 7
  72.         LOOP
  73.             v_lottoNr := skapaNyttLottoNr;
  74.             INSERT INTO lottorad(nr)
  75.             VALUES(v_lottoNr);
  76.    
  77.             v_count := v_count + 1;
  78.         END LOOP;
  79.     END;
  80. END lotto;
  81. /
  82.  
  83.  
  84. ---------- Package lotto -----------------
  85. CREATE OR REPLACE PACKAGE lotto
  86. AS    
  87.     PROCEDURE clear_table;
  88.     PROCEDURE skapaLottoRad;
  89.     FUNCTION skapaNyttLottoNr RETURN lottoNr NUMBER;
  90.    
  91. END;
  92. /
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement