Stored Procedureler

Firebird ve Interbase veritabanları ve SQL komutlarıyla ilgli sorularınızı sorabilirsiniz. Delphi tarafındaki sorularınızı lütfen Programlama forumunda sorunuz.
Cevapla
ilkeryesiloglu
Üye
Mesajlar: 18
Kayıt: 07 Haz 2004 09:04
Konum: Mersin
İletişim:

Stored Procedureler

Mesaj gönderen ilkeryesiloglu »

Merhabalar,
Firebird 1.5 sürümü ve D6 ile yaptığım bir denemede;
birden fazla satır geri döndüren bir select procedure yazdım.
Performansı çok olumlu yönde etkiliyor. Fakat D6 içinden bu Stored Procedureden gelen satırlara ulaşamıyorum. SP.ExecProc; komutu kullandığımda çalıştırabiliyorum fakat geri dönen kayıtlar üzerinde Next, Prior çalışmıyor. Open ettiğimde hata veriyor.

Özetle,
Birden fazla row geri döndüren SP için delphide tüm satırlara nasıl ulaşabilirim.

Teşekkürler, herkese kolay gelsin.

SP Kod Aşağıdadır.

CREATE PROCEDURE GIRISLER(
IN_GTIPNO VARCHAR(12) CHARACTER SET WIN1254,
IN_RUHSAT VARCHAR(10) CHARACTER SET WIN1254,
RETURNS(
OUT_REFNO INTEGER,
OUT_BELGE VARCHAR(10) CHARACTER SET WIN1254,
OUT_FORMNO INTEGER,
OUT_TARIHI DATE)
AS
BEGIN
/* Procedure body */

for
select REFNO, BELGE, FORMNO, TARIHI from STKHRK
where
GTIPNO=:IN_GTIPNO
and RUHSATNO=:IN_RUHSAT
and GC='G'
and IPTAL='H'
order by TARIHI,BELGE,FORMNO
INTO :OUT_REFNO, :OUT_BELGE, :OUT_FORMNO, :OUT_TARIHI
do begin
SUSPEND;
end

END
fduman
Moderator
Mesajlar: 2749
Kayıt: 17 Ara 2004 12:02
Konum: Ankara

Mesaj gönderen fduman »

Bir TIBQuery bileşeninden

Kod: Tümünü seç

SELECT * FROM GIRISLER('TIP_NO', 'RUHSAT')
TIP_NO, RUHSAT parametrelerini de yazarak normal bir Select SQL sorgusu gibi çalıştırıp, dönen değerleri alabilirsin.
ilkeryesiloglu
Üye
Mesajlar: 18
Kayıt: 07 Haz 2004 09:04
Konum: Mersin
İletişim:

Mesaj gönderen ilkeryesiloglu »

Çok Teşekkürler.

Sorun halledildi. Aynı zamanda IBSQL içinden denedim o şekilde de çalıştı.

Herkese iyi çalışmalar.
Cevapla