Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [Oracle] Baza danych
chrisbp
post
Post #1





Grupa: Zarejestrowani
Postów: 3
Pomógł: 0
Dołączył: 1.02.2010

Ostrzeżenie: (0%)
-----


Mam problem - potrzebuję zrobić program w Oracle który będzie pobierał z bazy danych informacje na temat imienia i nazwiska danej osoby oraz jej miejsca zamieszkania (wpisane w bazie) i jeśli dana osoba jest np z Lublina to będzie wyświetlał komunikat "Osoba [imie i nazwisko] jest z Lublina i nie dostaje dofinansowania" a jeśli nie jest to będzie wyświetlał "Osoba [imie i nazwisko] nie jest z Lublina i dostaje dofinansowanie". Tabela może się nazywać np. egzaminatorzy. Proszę o pomoc. Chodzi o sam kod.

Coś mniej więcej takiego jak się nie mylę:

create procedure cos_tam
declare
imie varchar2(30)
nazwisko varchar2(30)
miejscowosc varchar2(30)

cursor wynik is select imie, nazwisko, miejscowosc from studenci;

begin
open wynik;
loop
fetch wynik into imie, nazwisko, miejscowosc exit when wynik%notfound; dbms_oputput.put_line(imie||' '||nazwisko); if miejscowosc='biala podlaska'
then dbms_oputput.put_line('' || 'jest z białej'); else then dbms_oputput.put_line('' || 'nie jest z białej');
endif;
end loop;
close wynik;
end;
/

Ktoś potrafi to poprawnie napisać?
Go to the top of the page
+Quote Post
wiiir
post
Post #2





Grupa: Zarejestrowani
Postów: 260
Pomógł: 34
Dołączył: 22.02.2010

Ostrzeżenie: (0%)
-----


nie wiem jaka masz tabele .. ja zaloze sobie masz uzytkownicy, wojewodztwa

napisze bez kursora jak chcesz dam ci wersje kursorowa
  1. CREATE procedure cos_tam
  2. declare
  3. zm_idwojewodztwo number:=1; <--- podaj id wojewodztwa
  4. z_licz pls_integer:=0;
  5. begin
  6.  
  7. FOR xx IN (
  8. SELECT uz.imie ||' '||uz.nazwisko osoba, w.idwojewodztwo
  9. FROM uzytkownik uz, wojewodztwo w
  10. WHERE uz.idwojewodztwo = w.idwojewodztwo
  11.  
  12. )
  13. loop
  14. z_licz=z_licz+1;
  15. IF xx.idwojewodztwo = zm_idwojewodztwo then
  16. dbms_oputput.put_line(xx.osoba||' jest');
  17. else
  18. dbms_oputput.put_line(xx.osoba||' nie jest');
  19. end IF;
  20. end loop;
  21. IF z_licz=0 then
  22. dbms_oputput.put_line('Brak wynikow zapytania');
  23. end IF;
  24. exception when others then
  25.  
  26. end;


Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 20.08.2025 - 18:30