Konuyu Oyla:
  • Derecelendirme: 0/5 - 0 oy
  • 1
  • 2
  • 3
  • 4
  • 5
Web Server Application da Function Çalıştırma
#1
Merhabalar 

Fesih hocamın youtube ta anlattığı derslere bakarak linux servisi hakkında birşeyler öğrendim. Allah razı olsun kendisinden.
Apache üzerinden servis bilgileri ve Postgres vb den veri alabiliyorum.
Projemde Firedac bileşenleri kullanıyorum.

Ancak iş Postgres üzerindeki bir fonksiyonu çalıştırmaya gelince hata veriyor.


liste table
   

find fonksiyonum
   

fonksiyonu çağırınca gelen ekran
   

kodlarım devam ediyor ama burada hata verdiği için buraya kadar aldım.
   

sonuç
   


Ben nerde hata yapıyorum.

Saygılarımla.
Barış SAĞIR
Cevapla
#2
Fonksiyon içinde de abc.liste olarak yazarak deneyin

Schema ismini her zaman yazmak daha az hatayla karşılaşmanız demektir
PostgreSQL - Linux - Delphi, Poliüretan
WWW
Cevapla
#3
Hayır Pascal kodunuz sorunsuz görünüyordu. Ben sql fonksiyon kodunuz için demiştim

Birde siz prepare dediğiniz zaman zaten parametreler oluşuyor neden silip tekrar olusturuyorsunuz. Paramname ile karşılaştırıp direkt value değerini atamiyorsunuz

Select ... From abc.liste l
PostgreSQL - Linux - Delphi, Poliüretan
WWW
Cevapla
#4
(15-11-2020, Saat: 09:43)3ddark Adlı Kullanıcıdan Alıntı: Fonksiyon içinde de abc.liste olarak yazarak deneyin

Schema ismini her zaman yazmak daha az hatayla karşılaşmanız demektir

Evet dediğiniz gibi yaptım.


Fonksiyonun içinde Table isminden önce Shema ismi yazınca sorunsuz çalışıyor.

Çok teşekkür ederim. Allah razı olsun.

Saygılarımla

procedure TWebModule1.WebModule1YeniAction(Sender: TObject;
 Request: TWebRequest; Response: TWebResponse; var Handled: Boolean);
var JsonSonuc:TJSONObjectWriter;
 begin
 FDConnection1.Connected := True;
 FDStoredProc1.Connection := FDConnection1;
 FDStoredProc1.StoredProcName := 'find';
 FDStoredProc1.Prepare;
 FDStoredProc1.Params[0].AsString := '1234';
 FDStoredProc1.Open;

 JsonSonuc:=TJsonObjectWriter.Create;
 try
   JsonSonuc.WriteStartObject;
   JsonSonuc.WritePropertyName('id');
   JsonSonuc.WriteValue(FDStoredProc1.Fields[0].Asstring);
   JsonSonuc.WritePropertyName('adisoyadi');
   JsonSonuc.WriteValue(FDStoredProc1.Fields[1].Asstring);

   JsonSonuc.WriteEndObject;
   Response.ContentType:='text/html; charset=UTF8';
   Response.Content:=JsonSonuc.JSON.ToJSON;
 finally
   FDStoredProc1.Close;
   JsonSonuc.DisposeOf;
 end;
end;

Buna ek olarak FDConnection1 in MetaCurShema değerinide abc yapmak gerekir aksi halde hata veriyor.
Cevapla




Konuyu Okuyanlar: 1 Ziyaretçi