Delphide Karekter Uzunluğu
Forum kuralları
Forum kurallarını okuyup, uyunuz!
Forum kurallarını okuyup, uyunuz!
Selamlar,
Delphi Derleyicisinde String Alanları sabit (Constant) olarak tanımlarken 255'i geçemezseniz izin vermez. Bu sebeple eğer yazacağınız şey 255'den uzun olacaksa, arada Tırnak (') kapatıp artı (+) ekleyip yeni bir tırnak (') açarsanız derleyici hata vermez.
Buna benzer biz SQL cümleleri yazıyorduk (3-4 sayfa uzunluğunda)
örnek,
Kolay gelsin
Delphi Derleyicisinde String Alanları sabit (Constant) olarak tanımlarken 255'i geçemezseniz izin vermez. Bu sebeple eğer yazacağınız şey 255'den uzun olacaksa, arada Tırnak (') kapatıp artı (+) ekleyip yeni bir tırnak (') açarsanız derleyici hata vermez.
Buna benzer biz SQL cümleleri yazıyorduk (3-4 sayfa uzunluğunda)
örnek,
Kod: Tümünü seç
.
.
.
strDegisken1 := 'BURAYA YAZDIKLARIMIZ 255 KARAKTERI GEÇTİYSE ' +
'YAPARAK KALDIĞINIZ YERDEN DEVAM EDEBİLİRSİNİZ.' ;
.
.
.
Kuri Yalnız Jedi
Harbi Özgürlük İçin Pisi http://www.pisilinux.org/
Harbi Özgürlük İçin Pisi http://www.pisilinux.org/
insert cümleciği sayenizde çözüldü ancak aynı uyarlamaları update içinde yapıyorum fakat hata veriyor. acaba nerde yanlış yapıyor olabiilirim ki
data.isci.Close;
data.isci.SQL.Clear;
data.isci.SQL.Add('update iscicalisan set tckimlikno='''+edit15.Text+''' ');
data.isci.SQL.Add('(Sigortasicilno='''+edit10.Text+''',dogumtarihi='''+edit12.Text+''',isegiristarihi='''+edit11.Text+''',');
data.isci.sql.add('mah4='''+edit37.Text+''' where adisoyadi='''+edit9.Text+''')');
data.isci.ExecSQL;
showmessage('Kayıt Güncellendi');
data.isci.Close;
data.isci.SQL.Clear;
data.isci.SQL.Add('update iscicalisan set tckimlikno='''+edit15.Text+''' ');
data.isci.SQL.Add('(Sigortasicilno='''+edit10.Text+''',dogumtarihi='''+edit12.Text+''',isegiristarihi='''+edit11.Text+''',');
data.isci.sql.add('mah4='''+edit37.Text+''' where adisoyadi='''+edit9.Text+''')');
data.isci.ExecSQL;
showmessage('Kayıt Güncellendi');
Selamlar,
Ne hatası verdi? Bunu söylemeden çözüm nasıl beklersiniz?
Ayrıca bir tavsiye,
Şeklinde parametre geçişleri kullanırsanız, sayısal ve tarih alanlarında sıkıntı çekmezsiniz. SQL'lerde ve Bölgesel ayarlardaki, (.) (,) (/) gibi özel karakterler SQL cümlelerinde sorun yaratır. Bu sebeple SQL'lerinizde doğrudan yazmaktansa, parametre transferi şeklinde kullanmanız bu sıkıntıları ortadan kaldıracaktır.
Kolay gelsin.
Ne hatası verdi? Bunu söylemeden çözüm nasıl beklersiniz?
Ayrıca bir tavsiye,
Kod: Tümünü seç
Query1.SQL.Text := 'INSERT INTO TABLO1 (ALAN1, ALAN2) VALUES (:DEGER1, :DEGER2)' ,
Query1.ParamByName('DEGER1').AsString := 'Adnan' ;
Query1.ParamByName('DEGER2').AsDateTime := DateTimePicker1.DateTime ;
Query1.ExecSQL ;
Kolay gelsin.
Kuri Yalnız Jedi
Harbi Özgürlük İçin Pisi http://www.pisilinux.org/
Harbi Özgürlük İçin Pisi http://www.pisilinux.org/
Sonun da yardımlarınızla ve ugraşa uğraşa hallettim. Son ve Çalışır hali aşağıda; herkese tşk.
data.isci.Close;
data.isci.SQL.Clear;
data.isci.SQL.Add('update iscicalisan set sigortasicilno=:sicil, adisoyadi=:adi,dogumtarihi=:dt, isegiristarihi=:giris, yukumlukimse=:yukumlu, primodemehali=:prim, ' +
'isyerino=:isyeri, olaysaati=:saat, olayiscisayisi=:sayi,yaptigi_is=:is,olus_sekli=:sekil, taniklar=:tanik, ay1=:ay1, ay2=:ay2, ay3=:ay3, ay4=:ay4, '+
' gun1=:gun1, gun2=:gun2, gun3=:gun3, gun4=:gun4, ucret1=:ucret1, ucret2=:ucret2, ucret3=:ucret3, ucret4=:ucret4, prim1=:prim1, prim2=:prim2, prim3=:prim3, prim4=:prim4, mah1=:mah1, mah2=:mah2, mah3=:mah3, mah4=:mah4 where tckimlikno='''+edit15.Text+''' ');
data.isci.ParamByName('sicil').AsString := edit10.Text;
data.isci.ParamByName('adi').AsString := edit9.Text;
data.isci.ParamByName('dt').AsString := edit12.Text;
data.isci.ParamByName('giris').AsString := edit11.Text;
data.isci.ParamByName('yukumlu').AsString := combobox3.Text;
data.isci.ParamByName('prim').AsString := combobox4.Text;
data.isci.ParamByName('isyeri').AsString :=edit102.text;
data.isci.ParamByName('saat').AsString := edit13.Text;
data.isci.ParamByName('sayi').AsString := edit14.Text;
data.isci.ParamByName('is').AsString := memo1.Text;
data.isci.ParamByName('sekil').AsString := memo2.Text;
data.isci.ParamByName('tanik').AsString := memo3.Text;
data.isci.ParamByName('ay1').AsString := edit18.Text;
data.isci.ParamByName('ay2').AsString := edit19.Text;
data.isci.ParamByName('ay3').AsString := edit20.Text;
data.isci.ParamByName('ay4').AsString := edit21.Text;
data.isci.ParamByName('gun1').AsString := edit22.Text;
data.isci.ParamByName('gun2').AsString := edit23.Text;
data.isci.ParamByName('gun3').AsString := edit24.Text;
data.isci.ParamByName('gun4').AsString := edit25.Text;
data.isci.ParamByName('ucret1').AsString := edit26.Text;
data.isci.ParamByName('ucret2').AsString := edit27.Text;
data.isci.ParamByName('ucret3').AsString := edit28.Text;
data.isci.ParamByName('ucret4').AsString := edit29.Text;
data.isci.ParamByName('prim1').AsString := edit30.Text;
data.isci.ParamByName('prim2').AsString := edit31.Text;
data.isci.ParamByName('prim3').AsString := edit32.Text;
data.isci.ParamByName('prim4').AsString := edit33.Text;
data.isci.ParamByName('mah1').AsString := edit34.Text;
data.isci.ParamByName('mah2').AsString := edit35.Text;
data.isci.ParamByName('mah3').AsString := edit36.Text;
data.isci.ParamByName('mah4').AsString := edit37.Text;
data.isci.ExecSQL;
showmessage('Kayıt Güncellendi');
data.isci.Close;
data.isci.SQL.Clear;
data.isci.SQL.Add('update iscicalisan set sigortasicilno=:sicil, adisoyadi=:adi,dogumtarihi=:dt, isegiristarihi=:giris, yukumlukimse=:yukumlu, primodemehali=:prim, ' +
'isyerino=:isyeri, olaysaati=:saat, olayiscisayisi=:sayi,yaptigi_is=:is,olus_sekli=:sekil, taniklar=:tanik, ay1=:ay1, ay2=:ay2, ay3=:ay3, ay4=:ay4, '+
' gun1=:gun1, gun2=:gun2, gun3=:gun3, gun4=:gun4, ucret1=:ucret1, ucret2=:ucret2, ucret3=:ucret3, ucret4=:ucret4, prim1=:prim1, prim2=:prim2, prim3=:prim3, prim4=:prim4, mah1=:mah1, mah2=:mah2, mah3=:mah3, mah4=:mah4 where tckimlikno='''+edit15.Text+''' ');
data.isci.ParamByName('sicil').AsString := edit10.Text;
data.isci.ParamByName('adi').AsString := edit9.Text;
data.isci.ParamByName('dt').AsString := edit12.Text;
data.isci.ParamByName('giris').AsString := edit11.Text;
data.isci.ParamByName('yukumlu').AsString := combobox3.Text;
data.isci.ParamByName('prim').AsString := combobox4.Text;
data.isci.ParamByName('isyeri').AsString :=edit102.text;
data.isci.ParamByName('saat').AsString := edit13.Text;
data.isci.ParamByName('sayi').AsString := edit14.Text;
data.isci.ParamByName('is').AsString := memo1.Text;
data.isci.ParamByName('sekil').AsString := memo2.Text;
data.isci.ParamByName('tanik').AsString := memo3.Text;
data.isci.ParamByName('ay1').AsString := edit18.Text;
data.isci.ParamByName('ay2').AsString := edit19.Text;
data.isci.ParamByName('ay3').AsString := edit20.Text;
data.isci.ParamByName('ay4').AsString := edit21.Text;
data.isci.ParamByName('gun1').AsString := edit22.Text;
data.isci.ParamByName('gun2').AsString := edit23.Text;
data.isci.ParamByName('gun3').AsString := edit24.Text;
data.isci.ParamByName('gun4').AsString := edit25.Text;
data.isci.ParamByName('ucret1').AsString := edit26.Text;
data.isci.ParamByName('ucret2').AsString := edit27.Text;
data.isci.ParamByName('ucret3').AsString := edit28.Text;
data.isci.ParamByName('ucret4').AsString := edit29.Text;
data.isci.ParamByName('prim1').AsString := edit30.Text;
data.isci.ParamByName('prim2').AsString := edit31.Text;
data.isci.ParamByName('prim3').AsString := edit32.Text;
data.isci.ParamByName('prim4').AsString := edit33.Text;
data.isci.ParamByName('mah1').AsString := edit34.Text;
data.isci.ParamByName('mah2').AsString := edit35.Text;
data.isci.ParamByName('mah3').AsString := edit36.Text;
data.isci.ParamByName('mah4').AsString := edit37.Text;
data.isci.ExecSQL;
showmessage('Kayıt Güncellendi');
Rica ederiz,
Ancak kod satırlarını Code Tag'leri ile gönderirseniz okunaklılık artıyor.
Örneğin;
// Bu Satır normal yazı bölümünde yazıldı
Query1.SQL.Text := 'SELECT * FROM TABLO1 WHERE ALAN1= :STR_ALAN' ;
Okunaklık ne kadar da farkediyor değil mi?
Kolay Gelsin
Ancak kod satırlarını Code Tag'leri ile gönderirseniz okunaklılık artıyor.
Örneğin;
// Bu Satır normal yazı bölümünde yazıldı
Query1.SQL.Text := 'SELECT * FROM TABLO1 WHERE ALAN1= :STR_ALAN' ;
Kod: Tümünü seç
// Bu Satır Code Tag'leri arasında yazıldı
Query1.SQL.Text := 'SELECT * FROM TABLO1 WHERE ALAN1= :STR_ALAN' ;
Kolay Gelsin
Kuri Yalnız Jedi
Harbi Özgürlük İçin Pisi http://www.pisilinux.org/
Harbi Özgürlük İçin Pisi http://www.pisilinux.org/