Konuyu Oyla:
  • Derecelendirme: 0/5 - 0 oy
  • 1
  • 2
  • 3
  • 4
  • 5
Combobox database insert
#1
Merhaba;

Comboboxda içerikler diye itemsler oluşurdum (ankara, istanbul, izmir) gibi seçili olanı databaseye kaydetmek istiyorum, ancak içinden çıkamadığım bir sorun var, combobox da kayıt seçili değilse yani boş ise databaseye olan boş olarak kaydedilmesini istiyorum.
Aşağıdaki iki yöntemdede ayrı ayrı sorunlar yaşadım.


comboboxdaki tüm verileri databaseye kaydediyor.

 ParamByName('IK').AsString:=ComboIcerik.Items.Text;
 

seçili bir kayıt olmadığı içi adres hatası alıyorum.
 ParamByName('IK').AsString:=ComboIcerik.Selected.Text;

Acaba nasıl çözebilirim?
Cevapla
#2
Merhaba,
ComboBox'ın Items özelliği TStrings tipinde olduğundan, bir değerler kümesi içerir. 
Kullanım şeklinizde Items.Text değeri tüm kümeyi ifade etmektedir. Yani tüm ComboBax değerlerini veritabanına göndermesi gayet normal. 
Yalnızca seçili değeri veri tabanına göndermek isterseniz Items[<GönderilecekDeğerinIndexi>] şeklinde kullanmalısınız. 
Seçim yoksa veri tabanına o alan için null değeri gönderebilirsiniz.

Örnek kullanım tarzı aşağıdaki gibi olmalıdır.
var
 Secim: String;
begin
 if ComboBox1.ItemIndex > -1 then
 begin
   Secim := QuotedStr(ComboBox1.Items[ComboBox1.ItemIndex]);
 end
 else
 begin
   Secim := 'null';
 end;
 //ShowMessage('Seçim Değeri: ' + Secim);
 ParamByName('IK').AsString:=Secim;
end;
DelphiCan'dır!
Cevapla
#3
  if Assigned(ComboIcerik.Selected) then
    ParamByName('IK').AsString := ComboIcerik.Selected.Text
  else
    ParamByName('IK').AsString := '';
WWW
Cevapla
#4
(07-02-2018, Saat: 01:59)hido Adlı Kullanıcıdan Alıntı: Merhaba;

Comboboxda içerikler diye itemsler oluşurdum (ankara, istanbul, izmir) gibi seçili olanı databaseye kaydetmek istiyorum, ancak içinden çıkamadığım bir sorun var, combobox da kayıt seçili değilse yani boş ise databaseye olan boş olarak kaydedilmesini istiyorum.
Aşağıdaki iki yöntemdede ayrı ayrı sorunlar yaşadım.


comboboxdaki tüm verileri databaseye kaydediyor.

 ParamByName('IK').AsString:=ComboIcerik.Items.Text;
 

seçili bir kayıt olmadığı içi adres hatası alıyorum.
 ParamByName('IK').AsString:=ComboIcerik.Selected.Text;

Acaba nasıl çözebilirim?


Şöyle yapabilirsiniz, comboboxsa illeri yazdıktan sonra string boş bir alan ekleyin bu boş alan seçilmiş olduğunda databaseye kayıt sırasında hata almazsın, test ettim. 

boş
ankara
istanbul
izmir
Cevapla
#5
(07-02-2018, Saat: 21:49)brs Adlı Kullanıcıdan Alıntı:
(07-02-2018, Saat: 01:59)hido Adlı Kullanıcıdan Alıntı: Merhaba;

Comboboxda içerikler diye itemsler oluşurdum (ankara, istanbul, izmir) gibi seçili olanı databaseye kaydetmek istiyorum, ancak içinden çıkamadığım bir sorun var, combobox da kayıt seçili değilse yani boş ise databaseye olan boş olarak kaydedilmesini istiyorum.
Aşağıdaki iki yöntemdede ayrı ayrı sorunlar yaşadım.


comboboxdaki tüm verileri databaseye kaydediyor.

 ParamByName('IK').AsString:=ComboIcerik.Items.Text;
 

seçili bir kayıt olmadığı içi adres hatası alıyorum.
 ParamByName('IK').AsString:=ComboIcerik.Selected.Text;

Acaba nasıl çözebilirim?


Şöyle yapabilirsiniz, comboboxsa illeri yazdıktan sonra string boş bir alan ekleyin bu boş alan seçilmiş olduğunda databaseye kayıt sırasında hata almazsın, test ettim. 

boş
ankara
istanbul
izmir


Elinize sağlık.
Cevapla


Konu ile Alakalı Benzer Konular
Konular Yazar Yorumlar Okunma Son Yorum
  DATABASE FONT STYLE Altıner 3 959 20-08-2024, Saat: 21:36
Son Yorum: Altıner
  Uzak web database bağlantısı Altıner 4 1.592 17-01-2023, Saat: 14:07
Son Yorum: hi_selamlar
  Web servis uygulması ile Json veri ile update insert select ? diseqc 4 2.414 19-03-2022, Saat: 07:01
Son Yorum: diseqc
  datasnap insert into gonulali 7 2.712 02-10-2021, Saat: 10:49
Son Yorum: gonulali
  Delphi Lokal ve Uzak Database Kullanımı dkadir 3 2.283 20-06-2021, Saat: 12:34
Son Yorum: dkadir



Konuyu Okuyanlar: 1 Ziyaretçi