Stored Procedure de Tablo Adını Parametreli Vermek

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
Kullanıcı avatarı
mustafaozdemir
Üye
Mesajlar: 137
Kayıt: 19 Haz 2004 01:56

Stored Procedure de Tablo Adını Parametreli Vermek

Mesaj gönderen mustafaozdemir »

Selam arkadaşlar,
bir stored procedure de tablo adını dışarıdan parametreli veremez miyiz?
Veri Tabanı Firebird.
Kullanıcı avatarı
aslangeri
Moderator
Mesajlar: 4322
Kayıt: 26 Ara 2003 04:19
Konum: Ankara
İletişim:

Mesaj gönderen aslangeri »

s.a.
tablo adını parametrik bi şekilde arkadaş yapmıştı ama nasıl yapmıştı şimdi hatırlayamıyorum.
yani cevap yapılabilir olması lazım.
kolay gelsin Mustafa.

Not:ankaraya geldik.
Duyduğun Şeylerin Söylediklerim Olduğuna Eminim Ama
Anladığın Şeylerin Anlatmak İstediklerim Olduğuna Emin Değilim
Uğur1982
Üye
Mesajlar: 383
Kayıt: 11 Mar 2005 03:18
Konum: İzmir

Mesaj gönderen Uğur1982 »

Merhaba;

Bunu bende araştırmıştım ama bulamamıştım.
Aşagıdaki linkte aynı soruyu sormuşlar.fakat Firebird de bunun imkanının olmadığını söylüyor.Çünkü

Kod: Tümünü seç

SELECT ... FROM mytable
gibi bir yapı compile edilebilmeli diyor.+ Parametreyle kolon ismini ve table ismini değiştiremezsin diyor.
Tabi ne kadar doğru tartışılır...
Ama ne yazık ki doğru gibi... :D

http://forums.devshed.com/t156465/s.html

iyi günler...
Kullanıcı avatarı
mustafaozdemir
Üye
Mesajlar: 137
Kayıt: 19 Haz 2004 01:56

Mesaj gönderen mustafaozdemir »

Ama normal delphi tarafından yaptığımız sorgularda tabloyu parametreli kullanabiliyoz. sanki olabilir gibi geliyo ama bulamadım
Uğur1982
Üye
Mesajlar: 383
Kayıt: 11 Mar 2005 03:18
Konum: İzmir

Mesaj gönderen Uğur1982 »

Ben IBexpette çalıştıramadım.Belki Firebird'ün böyle özelliği var.Belki IBexpert sınırlı.Diğer yönetim araçlalarıyla bir dene istersen.Hiç olmadı SP yi SQL editörde yaz,belki çalışabilir...
Kullanıcı avatarı
sadettinpolat
Moderator
Mesajlar: 2131
Kayıt: 07 Ara 2003 02:51
Konum: Ankara
İletişim:

Mesaj gönderen sadettinpolat »

Kod: Tümünü seç

CREATE PROCEDURE DynamicSampleTwo (TableName VARCHAR(100))
AS
DECLARE VARIABLE Par INT;

BEGIN
EXECUTE STATEMENT 'SELECT MAX(CheckField) FROM ' || TableName INTO :Par;
IF (Par > 100) THEN
  EXCEPTION Ex_Overflow 'Overflow in ' || TableName;
END
kullanımı bu şekilde

detay için -->
c:\Program Files\Firebird\Firebird_1_5\doc\sql.extensions\README.execute_statement
"Sevmek, ne zaman vazgececegini bilmektir." dedi, bana.

---
http://sadettinpolat.blogspot.com/
Kullanıcı avatarı
mustafaozdemir
Üye
Mesajlar: 137
Kayıt: 19 Haz 2004 01:56

Mesaj gönderen mustafaozdemir »

Çok sağolun arkadaşlar. @sadettin arkadaşım dediğin gibi yaptım ve oldu. herkese iyi çalışmalar. yeni bir şey daha öğrenmiş olduk. :)
Uğur1982
Üye
Mesajlar: 383
Kayıt: 11 Mar 2005 03:18
Konum: İzmir

Mesaj gönderen Uğur1982 »

teşekkür ederim... :wink:

iyi günler...
Cevapla