![]() |
Clomosy Resmi Forum Sitesidir. Amacımız kullanıcılarımıza, iş ortaklarımıza, danışmanlara, yazılımcılara programlarımız hakkında destek ve bilgi vermektir. |
SQLite hatası |
Yanıt Yaz ![]() |
Yazar | |
Rmeysa ![]() Yeni Üye ![]() Kayıt Tarihi: 16 Haziran 2025 Konum: konya Durum: Aktif Değil Puanlar: 7 |
![]() ![]() ![]() ![]() ![]() Gönderim Zamanı: 4 Saat 5 Dakika Önce Saat 15:38 |
Merhaba, veritabanı bağlantısı kurmaya çalışıyorum hata alıyorum. Nerede hata yapıyorum?
var yemekEkle: TclForm; Qry: TclSQLiteQuery; ymkAdi, kcal: TClProEdit; ogunsecimi: TCLComboBox; eklebtn: TClProButton; notelbl: TClProLabel; noteMemo: TCLMemo; lblToplam: TClProLabel; bugun: TCLDateTime; toplamKalori: Integer; yemek, kalori, ogun, satir: String; girilenDeger, i: Integer; database, password: String; void TabloyuOlustur; { database = Clomosy.AppFilesPath + 'ClomosyDatabase.db3'; password = ''; try { Clomosy.DBSQLiteConnect(database, password); Clomosy.DBSQLiteQuery.Sql.Text = 'CREATE TABLE IF NOT EXISTS YemekKayitlari ('+ 'id INTEGER PRIMARY KEY AUTOINCREMENT,'+ 'yemekAdi TEXT,'+ 'kalori INTEGER,'+ 'ogun TEXT,'+ 'tarih TEXT)'; Clomosy.DBSQLiteQuery.OpenOrExecute; } except { ShowMessage('Tablo oluşturulurken hata oluştu: ' + LastExceptionMessage); } } void BtnOnClick; { yemek = ymkAdi.Text; kalori = kcal.Text; ogun = ogunsecimi.Text; if (yemek == '') { ShowMessage('Yemek adı boş olamaz.'); exit; } if (kalori == '') { ShowMessage('Kalori miktarı boş olamaz.'); exit; } if (ogun == 'ÖĞÜN SEÇİNİZ') { ShowMessage('Lütfen bir öğün seçin.'); exit; } try { girilenDeger = StrToInt(kalori); } except { ShowMessage('Lütfen geçerli bir kalori değeri girin!'); exit; } // Tarih ata bugun = Date; // Satırı oluştur ve yaz satir = '[' + ogun + '] ' + yemek + ' - ' + IntToStr(girilenDeger) + ' kcal (' + DateToStr(bugun) + ')'; noteMemo.Lines.Add(satir); // Kalori güncelle toplamKalori = toplamKalori + girilenDeger; lblToplam.Text = 'Toplam: ' + IntToStr(toplamKalori) + ' kcal'; // Veritabanına kaydet try { Clomosy.DBSQLiteConnect(database, password); Clomosy.DBSQLiteQuery.Sql.Text = 'INSERT INTO YemekKayitlari (yemekAdi, kalori, ogun, tarih) VALUES (' + '''' + yemek + ''',' + kalori + ',' + '''' + ogun + ''',' + '''' + DateToStr(bugun) + ''')'; Clomosy.DBSQLiteQuery.OpenOrExecute; } except { ShowMessage('Veri eklenemedi: ' + LastExceptionMessage); exit; } // Alanları temizle ymkAdi.Text = ''; kcal.Text = ''; ogunsecimi.ItemIndex = 0; ShowMessage('Yemek başarıyla eklendi!'); } { yemekEkle = TclForm.Create(Self); Qry = TclSQLiteQuery.Create(nil); database=Clomosy.AppFilesPath+'ClomosyDatabase.db3'; password=''; ogunsecimi = yemekEkle.AddNewComboBox(yemekEkle,'ogunsecimi'); ogunsecimi.Align = alTop; ogunsecimi.Height = 80; ogunsecimi.Margins.Top=10; ogunsecimi.AddItem('ÖĞÜN SEÇİNİZ',''); ogunsecimi.AddItem('SABAH',''); ogunsecimi.AddItem('İLK ARA ÖĞÜN',''); ogunsecimi.AddItem('ÖĞLE',''); ogunsecimi.AddItem('ARA ÖĞÜN',''); ogunsecimi.AddItem('AKŞAM',''); ymkAdi = yemekEkle.AddNewProEdit(yemekEkle,'ymkAdi','YEMEK ADI'); ymkAdi.Align = alTop; ymkAdi.Width = 250; ymkAdi.Height = 60; ymkAdi.margins.top=10; ymkAdi.clProSettings.BorderColor = clAlphaColor.clHexToColor('#90EE90'); ymkAdi.clProSettings.FontColor = clAlphaColor.clHexToColor('#000000'); ymkAdi.clProSettings.RoundHeight = 15; ymkAdi.clProSettings.RoundWidth = 15; ymkAdi.clProSettings.BorderWidth = 3; ymkAdi.clProSettings.FontSize = 12; ymkAdi.clProSettings.FontVertAlign = palcenter; ymkAdi.clProSettings.FontHorzAlign = palCenter; ymkAdi.clProSettings.TextSettings.Font.Style = [fsBold,fsItalic]; ymkAdi.clProSettings.IsFill = True; ymkAdi.clProSettings.IsRound = True; ymkAdi.SetclProSettings(ymkAdi.clProSettings); kcal = yemekEkle.AddNewProEdit(yemekEkle,'kcal','KALORİ MİKTARI'); kcal.Align = alTop; kcal.Width = 250; kcal.Height = 60; kcal.margins.top=10; kcal.clProSettings.BorderColor = clAlphaColor.clHexToColor('#90EE90'); kcal.clProSettings.FontColor = clAlphaColor.clHexToColor('#000000'); kcal.clProSettings.RoundHeight = 15; kcal.clProSettings.RoundWidth = 15; kcal.clProSettings.BorderWidth = 3; kcal.clProSettings.FontSize = 12; kcal.clProSettings.FontVertAlign = palcenter; kcal.clProSettings.FontHorzAlign = palCenter; kcal.clProSettings.TextSettings.Font.Style = [fsBold,fsItalic]; kcal.clProSettings.IsFill = True; kcal.clProSettings.IsRound = True; kcal.SetclProSettings(kcal.clProSettings); eklebtn = yemekEkle.AddNewProButton(yemekEkle,'eklebtn',''); eklebtn.Align = alTop; eklebtn.Width = 150; eklebtn.Height = 70; eklebtn.Margins.Top=10; eklebtn.clProSettings.FontColor = clAlphaColor.clDarkorchid; eklebtn.clProSettings.FontSize = 12; eklebtn.clProSettings.FontVertAlign = palcenter; eklebtn.clProSettings.FontHorzAlign = palCenter; eklebtn.clProSettings.TextSettings.Font.Style = [fsBold,fsItalic]; eklebtn.clProSettings.IsFill = True; eklebtn.clProSettings.PictureSource = 'https://resmim.net/cdn/2025/07/03/TnoYXI.png'; eklebtn.SetclProSettings(eklebtn.clProSettings); yemekEkle.AddNewEvent(eklebtn, tbeOnClick, 'BtnOnClick'); notelbl = yemekEkle.AddNewProLabel(yemekEkle,'notelbl','BUGÜN TÜKETİLEN YEMEKLER'); notelbl.Align = alBottom; notelbl.Width = 150; notelbl.Height = 20; notelbl.Margins.Left = 10; notelbl.Margins.Bottom = 20; notelbl.clProSettings.FontColor = clAlphaColor.clHexToColor('#00FA9A'); notelbl.clProSettings.FontSize = 15; notelbl.clProSettings.FontVertAlign = palcenter; notelbl.clProSettings.FontHorzAlign = palLeading; notelbl.clProSettings.TextSettings.Font.Style = [fsBold]; notelbl.SetclProSettings(notelbl.clProSettings); noteMemo = yemekEkle.AddNewMemo(yemekEkle,'noteMemo',''); noteMemo.Align = alBottom; noteMemo.Height = 200; noteMemo.Width = 250; noteMemo.Margins.Left= 10; noteMemo.Margins.Right= 10; noteMemo.Margins.Bottom= 50; noteMemo.ReadOnly = true; noteMemo.TextSettings.WordWrap = True; TabloyuOlustur; yemekEkle.Run; } |
|
![]() |
|
Mahmutdmr ![]() Yeni Üye ![]() ![]() Kayıt Tarihi: 20 Haziran 2025 Konum: Konya Durum: Aktif Değil Puanlar: 23 |
![]() Yanıt Yaz
Alıntı Mahmutdmr
Bu mesaj kurallara aykırıysa buradan yöneticileri bilgilendirebilirsiniz.
![]() ![]() ![]() ![]() |
Merhaba Rumeysa, Bir diğer sorun ise, prosedürlerin sonuna Umarım yardımcı olabilmişimdir.
var yemekEkle: TclForm; Qry: TclSQLiteQuery; ymkAdi, kcal: TClProEdit; ogunsecimi: TCLComboBox; eklebtn: TClProButton; notelbl: TClProLabel; noteMemo: TCLMemo; lblToplam: TClProLabel; bugun: TCLDateTime; toplamKalori: Integer; yemek, kalori, ogun, satir: String; girilenDeger, i: Integer; database, password: String;
void TabloyuOlustur { database = Clomosy.AppFilesPath + 'ClomosyDatabase.db3'; password = ''; try Clomosy.DBSQLiteConnect(database, password); Clomosy.DBSQLiteQuery.Sql.Text = 'CREATE TABLE IF NOT EXISTS YemekKayitlari ('+ 'id INTEGER PRIMARY KEY AUTOINCREMENT,'+ 'yemekAdi TEXT,'+ 'kalori INTEGER,'+ 'ogun TEXT,'+ 'tarih TEXT)'; Clomosy.DBSQLiteQuery.OpenOrExecute; except ShowMessage('Tablo oluşturulurken hata oluştu: ' + LastExceptionMessage); } } void BtnOnClick { yemek = ymkAdi.Text; kalori = kcal.Text; ogun = ogunsecimi.Text; if (yemek == '') { ShowMessage('Yemek adı boş olamaz.'); exit; } if (kalori == '') { ShowMessage('Kalori miktarı boş olamaz.'); exit; } if (ogun == 'ÖĞÜN SEÇİNİZ') { ShowMessage('Lütfen bir öğün seçin.'); exit; } try girilenDeger = StrToInt(kalori); except
ShowMessage('Lütfen geçerli bir kalori değeri girin!'); exit; } // Tarih ata bugun = Date; // Satırı oluştur ve yaz satir = '[' + ogun + '] ' + yemek + ' - ' + IntToStr(girilenDeger) + ' kcal (' + DateToStr(bugun) + ')'; noteMemo.Lines.Add(satir); // Kalori güncelle toplamKalori = toplamKalori + girilenDeger; lblToplam.Text = 'Toplam: ' + IntToStr(toplamKalori) + ' kcal'; // Veritabanına kaydet try Clomosy.DBSQLiteConnect(database, password); Clomosy.DBSQLiteQuery.Sql.Text = 'INSERT INTO YemekKayitlari (yemekAdi, kalori, ogun, tarih) VALUES (' + '''' + yemek + ''',' + kalori + ',' + '''' + ogun + ''',' + '''' + DateToStr(bugun) + ''')'; Clomosy.DBSQLiteQuery.OpenOrExecute; except ShowMessage('Veri eklenemedi: ' + LastExceptionMessage); exit; } // Alanları temizle ymkAdi.Text = ''; kcal.Text = ''; ogunsecimi.ItemIndex = 0; ShowMessage('Yemek başarıyla eklendi!'); } { yemekEkle = TclForm.Create(Self); Qry = TclSQLiteQuery.Create(nil);
database=Clomosy.AppFilesPath+'ClomosyDatabase.db3'; password=''; ogunsecimi = yemekEkle.AddNewComboBox(yemekEkle,'ogunsecimi'); ogunsecimi.Align = alTop; ogunsecimi.Height = 80; ogunsecimi.Margins.Top=10;
ogunsecimi.AddItem('ÖĞÜN SEÇİNİZ',''); ogunsecimi.AddItem('SABAH',''); ogunsecimi.AddItem('İLK ARA ÖĞÜN',''); ogunsecimi.AddItem('ÖĞLE',''); ogunsecimi.AddItem('ARA ÖĞÜN',''); ogunsecimi.AddItem('AKŞAM','');
ymkAdi = yemekEkle.AddNewProEdit(yemekEkle,'ymkAdi','YEMEK ADI'); ymkAdi.Align = alTop; ymkAdi.Width = 250; ymkAdi.Height = 60; ymkAdi.margins.top=10; ymkAdi.clProSettings.BorderColor = clAlphaColor.clHexToColor('#90EE90'); ymkAdi.clProSettings.FontColor = clAlphaColor.clHexToColor('#000000'); ymkAdi.clProSettings.RoundHeight = 15; ymkAdi.clProSettings.RoundWidth = 15; ymkAdi.clProSettings.BorderWidth = 3; ymkAdi.clProSettings.FontSize = 12; ymkAdi.clProSettings.FontVertAlign = palcenter; ymkAdi.clProSettings.FontHorzAlign = palCenter; ymkAdi.clProSettings.TextSettings.Font.Style = [fsBold,fsItalic]; ymkAdi.clProSettings.IsFill = True; ymkAdi.clProSettings.IsRound = True; ymkAdi.SetclProSettings(ymkAdi.clProSettings);
kcal = yemekEkle.AddNewProEdit(yemekEkle,'kcal','KALORİ MİKTARI'); kcal.Align = alTop; kcal.Width = 250; kcal.Height = 60; kcal.margins.top=10; kcal.clProSettings.BorderColor = clAlphaColor.clHexToColor('#90EE90'); kcal.clProSettings.FontColor = clAlphaColor.clHexToColor('#000000'); kcal.clProSettings.RoundHeight = 15; kcal.clProSettings.RoundWidth = 15; kcal.clProSettings.BorderWidth = 3; kcal.clProSettings.FontSize = 12; kcal.clProSettings.FontVertAlign = palcenter; kcal.clProSettings.FontHorzAlign = palCenter; kcal.clProSettings.TextSettings.Font.Style = [fsBold,fsItalic]; kcal.clProSettings.IsFill = True; kcal.clProSettings.IsRound = True; kcal.SetclProSettings(kcal.clProSettings);
eklebtn = yemekEkle.AddNewProButton(yemekEkle,'eklebtn',''); eklebtn.Align = alTop; eklebtn.Width = 150; eklebtn.Height = 70; eklebtn.Margins.Top=10; eklebtn.clProSettings.FontColor = clAlphaColor.clDarkorchid; eklebtn.clProSettings.FontSize = 12; eklebtn.clProSettings.FontVertAlign = palcenter; eklebtn.clProSettings.FontHorzAlign = palCenter; eklebtn.clProSettings.TextSettings.Font.Style = [fsBold,fsItalic]; eklebtn.clProSettings.IsFill = True; eklebtn.clProSettings.PictureSource = 'https://resmim.net/cdn/2025/07/03/TnoYXI.png'; eklebtn.SetclProSettings(eklebtn.clProSettings); yemekEkle.AddNewEvent(eklebtn, tbeOnClick, 'BtnOnClick');
notelbl = yemekEkle.AddNewProLabel(yemekEkle,'notelbl','BUGÜN TÜKETİLEN YEMEKLER'); notelbl.Align = alBottom; notelbl.Width = 150; notelbl.Height = 20; notelbl.Margins.Left = 10; notelbl.Margins.Bottom = 20; notelbl.clProSettings.FontColor = clAlphaColor.clHexToColor('#00FA9A'); notelbl.clProSettings.FontSize = 15; notelbl.clProSettings.FontVertAlign = palcenter; notelbl.clProSettings.FontHorzAlign = palLeading; notelbl.clProSettings.TextSettings.Font.Style = [fsBold]; notelbl.SetclProSettings(notelbl.clProSettings);
noteMemo = yemekEkle.AddNewMemo(yemekEkle,'noteMemo',''); noteMemo.Align = alBottom; noteMemo.Height = 200; noteMemo.Width = 250; noteMemo.Margins.Left= 10; noteMemo.Margins.Right= 10; noteMemo.Margins.Bottom= 50; noteMemo.ReadOnly = true; noteMemo.TextSettings.WordWrap = True;
TabloyuOlustur; yemekEkle.Run; } |
|
![]() |
Yanıt Yaz ![]() |
|
Tweet |
Forum Atla | Forum İzinleri ![]() Kapalı Foruma Yeni Konu Gönderme Kapalı Forumdaki Konulara Cevap Yazma Kapalı Forumda Cevapları Silme Kapalı Forumdaki Cevapları Düzenleme Kapalı Forumda Anket Açma Kapalı Forumda Anketlerde Oy Kullanma |