User Defined Function Kullanımı ??

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
Kullanıcı avatarı
AReS
Üye
Mesajlar: 86
Kayıt: 25 Haz 2005 04:58

User Defined Function Kullanımı ??

Mesaj gönderen AReS »

S.A
MS-SQL Serverde hazırlanmış olan bir fonksiyonu delphi tarafından nası kullanıyoruz. Bu konuda yardımcı olabilirmisiniz formda baktım ama Stored procedure ve triggerlar var.
Kullanıcı avatarı
naile
Admin
Mesajlar: 1873
Kayıt: 11 Haz 2003 10:11

Mesaj gönderen naile »

Tek değer döndüren bir fonksiyon ise;

Kod: Tümünü seç

SELECT Functionname(parametre)
şeklinde, yok eğer table döndürüyorsan;

Kod: Tümünü seç

SELECT * FROM Functionname(parametre)
şeklinde. Bunları Delphi tarafında adoquerye ekleyip open yaparak alabilirsin.
Kullanıcı avatarı
AReS
Üye
Mesajlar: 86
Kayıt: 25 Haz 2005 04:58

Mesaj gönderen AReS »

Teşekkürler naile hanım.Hemen bi deniyeyim.
Kullanıcı avatarı
AReS
Üye
Mesajlar: 86
Kayıt: 25 Haz 2005 04:58

Mesaj gönderen AReS »

Kod: Tümünü seç

CREATE FUNCTION Recete (@Yil smallint, @Polik smallint, @ProtokolNo int)
RETURNS @Tbl Table
(
	Metin varchar(4000)	
) 
 AS  
BEGIN 
	
	
	DECLARE @Metin varchar(4000)	, @Ad varchar(50)
	SET @Metin = ''
	
	DECLARE RS CURSOR LOCAL FAST_FORWARD FOR 
             		SELECT (SELECT Ad FROM zp_ilac WHERE Id = ilac) AS Ad  FROM Polik_Recete WHERE Yil = @Yil AND Polik = @Polik AND ProtokolNo = @ProtokolNo
	OPEN RS

	FETCH NEXT FROM RS
	INTO  @Ad

		WHILE @@FETCH_STATUS=0
		BEGIN
			SET @Metin = @Metin + @Ad + ', '

			FETCH NEXT FROM RS
			INTO  @Ad
		END
	
		INSERT INTO @Tbl (Metin) VALUES (Left(@Metin,  Len(@Metin) - 2))

	CLOSE RS
	DEALLOCATE RS
	
RETURN
END






buraya

Kod: Tümünü seç

Select metin recete (DEFAULT,DEFAULT,DEFAULT)  recete
dedim ama İnvalid lenght parameter passed to the substring functions diye hata veriyo ben burda metin kısmını çekmek istiyorum ama olmadı yardımcı olursanız sevinirim . Kolay gelsin
Kullanıcı avatarı
naile
Admin
Mesajlar: 1873
Kayıt: 11 Haz 2003 10:11

Mesaj gönderen naile »

Kod: Tümünü seç

SELECT * FROM Recete (2005,1,1)
Kullanıcı avatarı
AReS
Üye
Mesajlar: 86
Kayıt: 25 Haz 2005 04:58

Mesaj gönderen AReS »

Naile hanım yardımınız için teşekkürler ama aynı hatayı veriyo sizin verdiğiniz ilk cevaptan sonra o şekilde denedim ama yine hata mesajı nedendir anlayamadım.
Cevapla