+ Yanıtla
Toplam 3 sonuçtan 1 ile 3 arası olanlar

Konu Başlığı: Delphide Integer Parametre Hatası

  1. #1

    Delphide Integer Parametre Hatası

    Sistem analizi dersinin projesi için lanet olası delphiyi zorunlu tuttular ve her seferinde karşılaştığım abuk sabuk hatalar yüzünden canımdan bezmiş durumdayım. Son 5 gündür ortalama günde 1-2 saat bu problemim için çeşitli varyasyonlar deneyip çözmeye çalışıyorum fakat bir tülü olmuyor. Delphi 6 nın helpinde birşeyler bulabilmenin tek yolu Google arama motoru yerleştirmek sanırım.

    Sorunumu anlatacağım ama teorikte sorun bile sayılmaz aslında çünkü herşey kitabına uygun görünüyor. Parametreli bir SQL sorgusu hazırlıyorum ve WHERE kısmından sonra aldığım parametreye göre sorguyu gerçekleştiriyorum. String alanlarda yaptığım string parametreli sorgularda sorun yok fakat rakama (integer) göre arama yaptığımda her seferinde farklı bir hata alıyorum hatta o kadarki yetersiz hafıza, bilinmeyen alias hatası (alias vs tanımlar yapıdığı halde) bile veriyor. Yuh diyorum!

    Kod:
     Query1.Close;
     Query1.SQL.Clear;
     Query1.SQL.Add('SELECT * FROM abone WHERE AboneFID := edit1no');
     Query1.Params[0].AsInteger:= strtoint(Edit1.Text);
     Query1.Open;
    
    Yardımlarınıza hiç olmadığı kadar muhtacım.

  2. #2

    Re: Delphide Integer Parametre Hatası

    Sorunun masaüstü bilgisayardan kaynaklandığını sanıp notebookumda string alan denemesi yapmaya çalışırken WHERE sorgusunda sütun adını yanlışlık sonucu AboneAd yerine AboneFID yazmam sonucu gridte sonuç göremememin sebebini araştırırken yanlışın farkına vardım ve aynı zamanda hata da vermediğini gördüğüm içinde hiç bir değişiklik yapmadan tekrar derleyip edit nesnesine kayıtlı abone numaralarından birini verdim ve sonucu gördüm.
    Bu kadar saçma syntaxlı başka bir varmı bilemiyorum, stringden integera, integerdan floata 40 takla atıp duruyoruz ve bu kurallara uymayan anlamsız özel durumlarla karşılaşabiliyoruz. Delphi, adeta bilgisayar dillerinin Arapça'sı gibi!

  3. #3

    Re: Delphide Integer Parametre Hatası

    Alıntı Darksist tarafından gönderilen mesaj: Mesajı Göster
    Delphi 6 nın helpinde birşeyler bulabilmenin tek yolu Google arama motoru yerleştirmek sanırım.
    Delphi kod editöründe satır üzerinde iken F1 tuşuna bastığınız vakit çok kolay bir biçimde prosedür ile ilgili yardım alabilirsiniz.

    Alıntı Darksist tarafından gönderilen mesaj: Mesajı Göster
    fakat rakama (integer) göre arama yaptığımda her seferinde farklı bir hata alıyorum hatta o kadarki yetersiz hafıza, bilinmeyen alias hatası (alias vs tanımlar yapıdığı halde) bile veriyor. Yuh diyorum!
    Kullandığınız veritabanı nedir? Hangi bileşen ile veritabanına bağlanıyorsunuz? Ayrıca sorgunuzu ve parametlerini yazarsanız hatanın sebebini bulabiliriz. Pek karşılaşılan bi' durum değil çünkü.

    Mesajınızda sanırım kodu kopyalarken eksiklik oldu. Eşittir işaretinden sonra gelmeli ikinokta.
    Kod:
     Query1.SQL.Add('SELECT * FROM abone WHERE AboneFID = :edit1no');
    
    Alıntı Darksist tarafından gönderilen mesaj: Mesajı Göster
    Bu kadar saçma syntaxlı başka bir varmı bilemiyorum, stringden integera, integerdan floata 40 takla atıp duruyoruz
    Çeviri işlemleri Delphi'de tek komutla halledilebilir. StrToInt(str), IntToStr(int), FloatToStr(), StrToFloat(), StrToCurr(), CurrToStr(). Derlenen tüm dillerde bunlar olmak zorundadır.

    Alıntı Darksist tarafından gönderilen mesaj: Mesajı Göster
    Delphi, adeta bilgisayar dillerinin Arapça'sı gibi!
    Arapça gerçekten çok kapsamlı bir dildir. Delphi'yi bu yüzden benzettiniz sanırım

+ Yanıtla

Bu konu başlığı için etiketler

Mesaj Seçenekleri

  • Yeni başlık açamazsınız
  • Cevap yazabilirsiniz
  • Dosya ekleyemezsiniz
  • Mesajlarınızı değiştiremezsiniz