Sql'de sayısal değişkenle alan karşılaştırma
Forum kuralları
Forum kurallarını okuyup, uyunuz!
Forum kurallarını okuyup, uyunuz!
-
- Üye
- Mesajlar: 46
- Kayıt: 25 May 2005 09:08
- Konum: izmir
Kod:
IBDataSet1.SelectSQL.Add('select * from a1 where sn='+IntTostr(Edit1.Text)+' ');
Bu kodda tip sorunu var. IntToStr parametre olarak int almalıdır, ama edit1.text string yapıdadır.
Dialect 3 sorunu varsa, şunu dene (alan isimlerini çift tırnakla belirt):
IBDataSet1.SelectSQL.Add('select * from a1 a where a."sn"='+deger);
IBDataSet1.SelectSQL.Add('select * from a1 where sn='+IntTostr(Edit1.Text)+' ');
Bu kodda tip sorunu var. IntToStr parametre olarak int almalıdır, ama edit1.text string yapıdadır.
Dialect 3 sorunu varsa, şunu dene (alan isimlerini çift tırnakla belirt):
IBDataSet1.SelectSQL.Add('select * from a1 a where a."sn"='+deger);
Hepsini Tek tek ibsql dede denedim aynı hata tekrarlanıyor ancak
yapınca
hatası verdi arkadaşa rezil oldum gibi çünkü bu alternatiflerden hiç birisi işe yaramadı.
Arkadaşım sql string alandır orada direk içinde integer karşılaştırma yapamazsın demişti.
Kod: Tümünü seç
IBsql1.SQL.Add('select * from a1 where sn='+IntTostr(Edit1.Text)+');
Kod: Tümünü seç
There is no overloaded version of 'IntToStr' that can be called with these arguments
Arkadaşım sql string alandır orada direk içinde integer karşılaştırma yapamazsın demişti.
Kod: Tümünü seç
('select * from a1 where sn=''+IntTostr(Edit1.Text)+');
Kod: Tümünü seç
l parse error
Kod: Tümünü seç
('select * from a1 where sn='''+IntTostr(Edit1.Text)+'''');
***********************************
Kamil odur ki; koya dünyada bir eser,
Eseri olmayanın, yerinde yeller eser.
***********************************
Kamil odur ki; koya dünyada bir eser,
Eseri olmayanın, yerinde yeller eser.
***********************************
Maalesef yine verdi
en yakını bana göre ama buda çalışmadı peki bu mümkünmüdür arkadaşlar bu konuda fikirleriniz nelerdir...
Kod: Tümünü seç
There is no overloaded version of 'IntToStr' that can be called with these arguments
en yakını
Kod: Tümünü seç
('select * from a1 where sn=''+IntTostr(Edit1.Text)+');
valla bugün çuvalladık
.kafam karışık mı nedir
böyle çalışıyor fakat Edit1.Text e integer değer girmen gerekir
iyi günler...


Kod: Tümünü seç
IBsql1.SQL.Add('select * from a1 where sn='+Edit1.Text+' ');
iyi günler...
Kod: Tümünü seç
('select * from a1 where sn=''+inttostr(strtoint(Edit1.Text))+');
***********************************
Kamil odur ki; koya dünyada bir eser,
Eseri olmayanın, yerinde yeller eser.
***********************************
Kamil odur ki; koya dünyada bir eser,
Eseri olmayanın, yerinde yeller eser.
***********************************
evet bu şekilde oluyor ama benim yapmak istediğim
şeklindeydi yani direk sql in içinden sayıyı stringe çevirmeden yapmaktı ama bu kadar yoldan sonra olmuyorsa demekki olmuyor. Arkadaşada rezil oldum
Öğrenmenin yaşı yoktur
Kod: Tümünü seç
('select * from a1 where sn='+Edit1.Text+' ');
Kod: Tümünü seç
('select * from a1 where sn=''+IntTostr(Edit1.Text)+');

Öğrenmenin yaşı yoktur

Olayın başını kaçırdım ancak burada bir hata var. Edit1.Text string tipindedir. Sen IntToStr ile string'e integer muamelesi yapmak istemişsin. Yanlış bir kullanım. Böyle bir çevirme işlemine gerek yok.yokname yazdı:şeklindeydi yani direk sql in içinden sayıyı stringe çevirmeden yapmaktı amaKod: Tümünü seç
('select * from a1 where sn=''+IntTostr(Edit1.Text)+');
merhaba,
burada demirbaş no integer bir alan ve edit içine girilen sayı ile aramayı yapıyor bi sorun çıkmıyor sizde böyle bir sorunun çıkması baya garip bi olay ama muhakkak çözümü vardır veya bi yerde yanlış bir şeyler
kolay gelsin
Kod: Tümünü seç
var
s1,s2,s:String;
begin
s1:=Edit1.Text;
s2:=Edit2.text;
dgirissrgibquery.close;
with dgirissrgibquery.sql do
begin
Clear;
Add('Select*From DEMIRBAS_GIRIS');
if s1<>'' then s:='(DEMIRBAS_NO LIKE '''+s1+''')';
if s2<>'' then
begin
if s<>'' then s:=s+' AND ';
s:=s+'(GIRIS_ZAMANI = '''+s2+''')'
end;
if s<>'' then add ('WHERE '+s);
add('ORDER BY DEMIRBAS_NO');
end;
dgirissrgibquery.Open;
dgirissrgibquery.Last;
if dgirissrgibquery.IsEmpty then
ShowMessage('Sorguladığınız Kayıt Bulunamadı!!!');
kolay gelsin
Şefkat-u Merhamette Güneş Gibi Ol.
Başkalarının Kusurunu Örtmekte Gece Gibi Ol.
Sehavet-u Cömertlikte Akarsu Gibi Ol.
Hiddet-u Asabiyette Ölü Gibi Ol.
Tevazu-u Mahviyette Toprak Gibi Ol.
Ya Olduğun Gibi Görün Ya Göründüğün Gibi Ol.

Başkalarının Kusurunu Örtmekte Gece Gibi Ol.
Sehavet-u Cömertlikte Akarsu Gibi Ol.
Hiddet-u Asabiyette Ölü Gibi Ol.
Tevazu-u Mahviyette Toprak Gibi Ol.
Ya Olduğun Gibi Görün Ya Göründüğün Gibi Ol.
