Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

procedura - pisanje

[es] :: Firebird/Interbase :: procedura - pisanje

[ Pregleda: 4930 | Odgovora: 7 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

brenas
srem

Član broj: 50753
Poruke: 110
*.dialup.neobee.net.



Profil

icon procedura - pisanje02.06.2006. u 20:46 - pre 216 meseci
POkusavam da napisem jednu jednostavnu proceduru ali i pored moje tvrdoglavosti nesto mi ne ide od ruke!
Imam bazu, konektovan sam na nju, u okviru baze imam tabelu "R" (tako se zove tabela).
Napisem proceduru:

create procedure procedura1 (izlaz char(10))
as
begin
select * from R
end
;
i tu nastaje problem. Kada god pokusam da kompajliram proceduru javlja mi kompajler gresku u poslednjem redu kod reci END. Probao sam da iza naziva tabele R stavim ";", ali nece ni sa tim da prodje. Gledam "help" u InterBase-u, ko' tele i ne vidim gresku. Sta radim pogresno?
 
Odgovor na temu

dogriz
Sombor

Član broj: 29744
Poruke: 259
*.129.nat-pool-bgd.sbb.co.yu.

Sajt: dogriz.blogspot.com


+6 Profil

icon Re: procedura - pisanje02.06.2006. u 21:33 - pre 216 meseci
Code:
SET TERM ^ ;

CREATE PROCEDURE PROCEDURA1
RETURNS(IZLAZ CHAR(10))
AS
begin
  for
    SELECT NEKO_POLJE /*SAMO JEDNO, JER IMAS SAMO JEDAN IZLAZNI PARAMETAR, ZATO NE MOZE "*" */
    FROM R
    into :IZLAZ
  do
  suspend;
end^

SET TERM ; ^


Iz glave, nisam probao. Probaj pa javi da li radi.
 
Odgovor na temu

brenas
srem

Član broj: 50753
Poruke: 110
*.dialup.neobee.net.



Profil

icon Re: procedura - pisanje02.06.2006. u 22:10 - pre 216 meseci
Pogresio sam sa objasnjenjem!
Nemam izlaznu promenljivu vec ULAZnu koju treba da uporedim sa necim u bazi.
 
Odgovor na temu

dogriz
Sombor

Član broj: 29744
Poruke: 259
*.129.nat-pool-bgd.sbb.co.yu.

Sajt: dogriz.blogspot.com


+6 Profil

icon Re: procedura - pisanje03.06.2006. u 23:39 - pre 216 meseci
OK, a sta treba da ti vraca ta procedura?
 
Odgovor na temu

brenas
srem

Član broj: 50753
Poruke: 110
*.dialup.neobee.net.



Profil

icon Re: procedura - pisanje04.06.2006. u 17:50 - pre 216 meseci
U tabeli imam dve kolone : Ime i Datum. Procedura treba da mi vrati ime za zadati datum. Probam sada to sa IBQuery-em , direktno iz koda Delphi-a na primer:
IBQuery1.Sql.Add('select ime from R where datum=" '+Edit3.Text+' " '); ali mi prilkom izvrsavanja Query-a uvek vraca poruku da ne moze da nadje kolonu sa nazivom koji u stvari predstavlja datum iz 'Edit' komponente. Probam i jedno i drugo ali nesto tu fali!
 
Odgovor na temu

chachka
Srđan Mijatov
Programer
BUS Computers
Kikinda

Član broj: 53780
Poruke: 576
*.tippnet.co.yu.

Sajt: www.baze-podataka.net


+4 Profil

icon Re: procedura - pisanje05.06.2006. u 22:36 - pre 216 meseci
Citat:
brenas:
IBQuery1.Sql.Add('select ime from R where datum=" '+Edit3.Text+' " ');


Problem je u znacima navoda (") i u razmaku iza i i spred tih navodnika. Probaj sa apostrofom ('), ali moras staviti dvostruki apostrof.

Code:

IBQuery1.Sql.Add('select ime from R where datum='''+Edit3.Text+'''');

"The best code is no code at all."
- Zidar (ES član)
"Biggest obstacle to learning
SQL is unlearning procedural
programming."
- Joe
Celko
"Minimize code, maximize data."
- A. Neil Pappalardo
 
Odgovor na temu

dogriz
Sombor

Član broj: 29744
Poruke: 259
*.129.nat-pool-bgd.sbb.co.yu.

Sajt: dogriz.blogspot.com


+6 Profil

icon Re: procedura - pisanje05.06.2006. u 22:40 - pre 216 meseci
Pretpostavljam da treba da ti vraca sva imena za zadati datum, pa bi procedura trebala da izgleda otprilike ovako:
Code:
SET TERM ^ ;

CREATE PROCEDURE PROCEDURA1(DATUM DATE)
RETURNS (IME CHAR(10))
AS
BEGIN
  FOR
    SELECT IME
    FROM R
    WHERE DATUM=:DATUM
    INTO :IME DO
  BEGIN
    SUSPEND;
  END
END^

SET TERM ; ^

 
Odgovor na temu

brenas
srem

Član broj: 50753
Poruke: 110
*.dialup.neobee.net.



Profil

icon Re: procedura - pisanje06.06.2006. u 01:05 - pre 216 meseci
Probao sam proceduru - RADI! To je bas ono sto mi je trebalo!
HVALA!!!
 
Odgovor na temu

[es] :: Firebird/Interbase :: procedura - pisanje

[ Pregleda: 4930 | Odgovora: 7 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.