firebird de sql hatası

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
minikçilek
Üye
Mesajlar: 30
Kayıt: 19 Tem 2004 09:25

firebird de sql hatası

Mesaj gönderen minikçilek »

arkadaşlar

Kod: Tümünü seç

 anaform.ibtuketimgiris.SelectSQL.Add('select * from MALZEMEGIRISI  where fissirano='''+strtoint(fisno.Text)+'''');
sql kodunda ne hatası var acaba?
Kullanıcı avatarı
aslangeri
Moderator
Mesajlar: 4322
Kayıt: 26 Ara 2003 04:19
Konum: Ankara
İletişim:

Mesaj gönderen aslangeri »

s.a.
bize müneccimlik yaptıracağına programın veya kodun verdiği hatayı söylede kendimizi kasmadan, biliyorsak yardımcı olalım.
kolay gelsin.
Duyduğun Şeylerin Söylediklerim Olduğuna Eminim Ama
Anladığın Şeylerin Anlatmak İstediklerim Olduğuna Emin Değilim
minikçilek
Üye
Mesajlar: 30
Kayıt: 19 Tem 2004 09:25

Mesaj gönderen minikçilek »

incompatible types string and integer

strtoint i kaldırıncada conversion error from string
hataları alıyorum aslangeri
Kullanıcı avatarı
aslangeri
Moderator
Mesajlar: 4322
Kayıt: 26 Ara 2003 04:19
Konum: Ankara
İletişim:

Mesaj gönderen aslangeri »

s.a.
1.Bu hataları derlerken mi alıyorsun yoksa çalıştırıncamı?
2.Fissirano nun tipi ney. (eğer integer se tırnakları kaldır.)

3.edit1.text in içindeki değerin rakam olduğundan emin ol.
4.Parametre kullan

kolay gelsin.
Duyduğun Şeylerin Söylediklerim Olduğuna Eminim Ama
Anladığın Şeylerin Anlatmak İstediklerim Olduğuna Emin Değilim
poshet303
Üye
Mesajlar: 235
Kayıt: 26 Eki 2005 01:15

Mesaj gönderen poshet303 »

Offf of

Kod: Tümünü seç

anaform.ibtuketimgiris.SelectSQL.Add('select * from MALZEMEGIRISI  where fissirano='+(fisno.Text)); 
Bu kodu bir dene.

Text ile integer ı + operatoru ile birleştirmeye çalışmışsın olmaz.

fissirano muhtemelen sayısal bir field type fakat string olarak eşitlemeye çalışmışsın.

Aman dikkat
aLonE CoDeR
Kıdemli Üye
Mesajlar: 1223
Kayıt: 26 Nis 2005 04:08

Mesaj gönderen aLonE CoDeR »

Alan tabloda Integer olarak tanımlansa bile, tırnak içinde yazmak hata vermez ki :!:
Kullanıcı avatarı
nitro
Üye
Mesajlar: 1112
Kayıt: 23 Ağu 2004 01:18
Konum: Çanakkale
İletişim:

Mesaj gönderen nitro »

Kod: Tümünü seç

anaform.ibtuketimgiris.SelectSQL.Add('select * from MALZEMEGIRISI  where fissirano='+quotedstr(fisno.Text));
dene.
poshet303
Üye
Mesajlar: 235
Kayıt: 26 Eki 2005 01:15

Mesaj gönderen poshet303 »

Alan tabloda Integer olarak tanımlansa bile, tırnak içinde yazmak hata vermez ki
Kesinlikle doğru.
Kullanıcı avatarı
rsimsek
Admin
Mesajlar: 4482
Kayıt: 10 Haz 2003 01:48
Konum: İstanbul

Re: firebird de sql hatası

Mesaj gönderen rsimsek »

minikçilek yazdı:arkadaşlar

Kod: Tümünü seç

 anaform.ibtuketimgiris.SelectSQL.Add('select * from MALZEMEGIRISI  where fissirano='''+strtoint(fisno.Text)+'''');
sql kodunda ne hatası var acaba?
Arkadaşlar fazla dağıtmadan şöyle diyebiliriz: her ne kadar fissirano alanı veritabanında integer bir alan olsa da oluşturduğumuz sorgu cümleciğinin bununla bir alakası yok :idea: Dolaysıyla string bir bilgiyi strtoint() integer sonucu ile toplamaya delphi izin vermez :idea:

Not: PHP de farklı tipteki alanları birbirine eklemek mümkün :wink:
Bilgiyi paylaşarak artıralım! Hayatı kolaylaştıralım!!
poshet303
Üye
Mesajlar: 235
Kayıt: 26 Eki 2005 01:15

Mesaj gönderen poshet303 »

rsimsek demis ki
Dolaysıyla string bir bilgiyi strtoint() integer sonucu ile toplamaya delphi izin vermez
bende demisim
Text ile integer ı + operatoru ile birleştirmeye çalışmışsın olmaz
Yani orası muhakkak.

Not: PHP de farklı tipteki alanları birbirine eklemek mümkün
VB ninde öyle dengesizlikleri var :shock:
Bende zaten bırakacam Delphi, VB ye geçecem :P

Sorun sahibi arkadaş sorunun çözülüp çözülmediğini. Çözülmedi ise aldığı hata mesajını yazsada bizde burda kasmasak boşuna.
Kullanıcı avatarı
rsimsek
Admin
Mesajlar: 4482
Kayıt: 10 Haz 2003 01:48
Konum: İstanbul

Mesaj gönderen rsimsek »

poshet303 yazdı:..
Not: PHP de farklı tipteki alanları birbirine eklemek mümkün
VB ninde öyle dengesizlikleri var :shock:
Bende zaten bırakacam Delphi, VB ye geçecem :P
...
Hocam VB de nereden çıktı :?: Sanırım sende hatlar fena karıştı, yukarıdaki konuşmalara bakarak bu sonuca nasıl vardığını anlamadım doğrusu :?
Bilgiyi paylaşarak artıralım! Hayatı kolaylaştıralım!!
poshet303
Üye
Mesajlar: 235
Kayıt: 26 Eki 2005 01:15

Mesaj gönderen poshet303 »

Hocam VB de nereden çıktı
PHP nerden çıktı ise VisualBasic de ordan çıktı. :)

Kod: Tümünü seç

 Dim Deneme;
 Deneme="lam lam lam"
 Deneme=Deneme & 147852
Deneme bir string, 147852 ise bir sayı VB bunları & operatorü ile sorunsuz birleştirir.
Sanırım sende hatlar fena karıştı
Yok canım hatlar salam.
Kullanıcı avatarı
rsimsek
Admin
Mesajlar: 4482
Kayıt: 10 Haz 2003 01:48
Konum: İstanbul

Mesaj gönderen rsimsek »

:?
Bilgiyi paylaşarak artıralım! Hayatı kolaylaştıralım!!
Kullanıcı avatarı
White Rose
Üye
Mesajlar: 726
Kayıt: 06 Tem 2005 09:41
Konum: Güneyden
İletişim:

Mesaj gönderen White Rose »

anaform.ibtuketimgiris.SelectSQL.clear;

anaform.ibtuketimgiris.SelectSQL.Add('select * from MALZEMEGIRISI
where fissirano='''+fisno.Text+'''');

Yukardaki ilk mesajda yazılan SQL kodu her çalıştığında selectSQL'e ekleme yapar, oysa bu kodun eklemeden önce eski kodun temizlenmesi gerekmez mi!
doğru kodun yukardaki şekilde olması lazım..
Cevapla