Sayfayı Yazdır | Pencereyi Kapat

sqlite da nasıl Id 1 den başlatırım

Nereden Yazdırıldığı: Clomosy | Forum
Kategori: Genel Programlama
Forum Adı: Genel İşlemler
Forum Tanımlaması: TRObject dili ile programlama yaparken karşılaşılan genel işlemler
URL: https://forum.clomosy.com.tr/forum_posts.asp?TID=825
Tarih: 08 Ocak 2025 Saat 20:14
Program Versiyonu: Web Wiz Forums 12.07 - https://www.webwizforums.com


Konu: sqlite da nasıl Id 1 den başlatırım
Mesajı Yazan: Senol
Konu: sqlite da nasıl Id 1 den başlatırım
Mesaj Tarihi: 07 Ağustos 2024 Saat 09:41
//Bu kodda mesela database'i açıp id kısmına 1 yazmadan çalışmıyor elimle manuel //yazmam lazım o da sqlite ın kullanım mantığını bozuyor bunu nasıl yapabilirim
var   
  hayvanYukle : TclForm;
  btnUnit,konumBtn: TclButton;
  edtYukleyenKisi, edtKonumBilgisi, edtNotEkle : TclEdit;
  btnInsert : TclButton;
  //testListview : TClListView;
  Qry : TClSQLiteQuery;
  database, password : String;
  okutBtn: TclButton;
  CameraImg , SourceImg: TClImage;
  LMemStream: TCLMemoryStream;
  isUnit2Open: Boolean; // Burada sadece değişkeni tanımlıyoruz
  ImageAddBtn: TClProButton;
  Latitude,Longitude : String;
  clRest:TclRest;
  qrya:TCLJSONQuery;
  qryString,format,resimString:String;
  noteMemo:TCLMemo;

/*
void SendTohayvanYukle;
{
  CallerForm.clShow;
}


void GetData;
{
  try
    Qry = Clomosy.DBSQLiteQueryWith('SELECT ''Urun adi:'' || UrunAdi as MAIN_TEXT, ''Urun Fiyati:'' || UrunFiyat as SIDE_TEXT_CENTER, ''Urun stok:'' || UrunStok as SIDE_TEXT_TOP, ''Barkod No:'' || BarkodOkut as FOOTER_TEXT, ''Urun Açıklaması:'' || Aciklamasi as SUB_TEXT FROM Categories');
    Qry.OpenOrExecute;
    testListview.clLoadListViewDataFromDataset(Qry);
  except
    ShowMessage('Exception class: ' + LastExceptionClassName + ' Exception Message: ' + LastExceptionMessage);
  }
}
*/

void InsertToDatabase;
{
  try
    
    Clomosy.DBSQLiteQuery.SQL.Text = 'INSERT INTO Categories (Yukleyenadi, KonumBilgisi, NotBilgisi,Base64) VALUES (' + QuotedStr(edtYukleyenKisi.Text) + ',' + QuotedStr(edtKonumBilgisi.Text) + ',' + QuotedStr(edtNotEkle.Text) + ',' + QuotedStr(resimString)+ ')';
    Clomosy.DBSQLiteQuery.OpenOrExecute;
    //GetData;
    ShowMessage('Veri ekleme başarılı');
    edtYukleyenKisi.Text = '';
    edtKonumBilgisi.Text = '';
    edtNotEkle.Text = '';
    CameraImg.MultiResBitmap.Clear;
  except
    ShowMessage('Exception class: ' + LastExceptionClassName + ' Exception Message: ' + LastExceptionMessage+'insert');
  } 
}

void getImageBase64;
{
  CameraImg.Bitmap.SaveToStream(LMemStream);
  resimString = LMemStream.AsBase64;
  InsertToDatabase;
 
}


void formatAl;
{
  with qrya do
     {
      format=FieldByName('formatted').AsString;
     }
    
}
void konumAlma;
{
 Latitude=clGetStringTo(Clomosy.LocationValue,'|')
 Longitude=clGetStringAfter(Clomosy.LocationValue,'|')
Latitude=clGetStringReplace(Latitude,',','.');
Longitude=clGetStringReplace(Longitude,',','.');
 ShowMessage('Latitude value: '+Latitude);
 ShowMessage('Longitude value: '+Longitude);
 clRest=TCLRest.Create;
  clRest.BaseURL = ' https://api.geoapify.com/v1/geocode/reverse" rel="nofollow - https://api.geoapify.com/v1/geocode/reverse ?'+'lat='+Latitude+'&lon='+Longitude+'&apiKey=dd4bacb2b2f845c1ad9439f8f8ae9289';
   clRest.Accept = 'application/json';
   clRest.Method = rmGET;
    clRest.Execute;
   
   qrya= Clomosy.ClDataSetFromJSON(clRest.Response);
    with qrya do
     {
      qryString=FieldByName('features').AsString;
     }
     qrya= Clomosy.ClDataSetFromJSON(qryString);
     with qrya do
     {
      qryString=FieldByName('properties').AsString;
     }
     qrya= Clomosy.ClDataSetFromJSON(qryString);
     formatAl;
     edtKonumBilgisi.Text=format;
      //ShowMessage(format);
}

void dokunmaDurum;
{
  if (hayvanYukle.clFormGestureEvent_GestureID == 264 && not (isUnit2Open))
  {
    isUnit2Open = True; // Unit2'nin açık olduğunu belirleyin
    Clomosy.RunUnit('Unit2');
  }
  
}



void addImageClick;
{
  Clomosy.ImageChooser(hayvanYukle, CameraImg);
}



void Unit2CloseEvent;
{
  isUnit2Open = False; // Unit2 kapandığında flag'i sıfırlayın
}

{

  hayvanYukle = TclForm.Create(Self);
 LMemStream = TCLMemoryStream.Create;
  edtYukleyenKisi = hayvanYukle.AddNewEdit(hayvanYukle, 'edtYukleyenKisi', 'Yüklen Kişi:');
  edtYukleyenKisi.Align = alMostTop;
  konumBtn = hayvanYukle.AddNewButton(hayvanYukle,'konumBtn','Konum bilgilerini al');
  konumBtn.Width = 150;
  konumBtn.Align=alMostTop;
  hayvanYukle.AddNewEvent(konumBtn,tbeOnClick,'konumAlma');
  
  edtKonumBilgisi = hayvanYukle.AddNewEdit(hayvanYukle, 'edtKonumBilgisi', 'Konum bilgisi giriniz');
  edtKonumBilgisi.Align = alMostTop;
  
  edtNotEkle = hayvanYukle.AddNewEdit(hayvanYukle, 'edtNotEkle', 'Not ekleyiniz');
  edtNotEkle.Align = alMostTop;

  
  
  ImageAddBtn = hayvanYukle.AddNewProButton(hayvanYukle, 'ImageAddBtn', 'Görsel Ekle');
  clComponent.SetupComponent(ImageAddBtn, '{"TextSize":16, "TextBold":"yes", "BackgroundColor":"#00b282", "RoundWidth":8, "RoundHeight":8, "TextColor":"#ffffff", "Height":42, "MarginBottom":16}');
  hayvanYukle.AddNewEvent(ImageAddBtn, tbeOnClick, 'addImageClick'); // kamera açtıran buton
  ImageAddBtn.Align=alMostTop;
  
  CameraImg = hayvanYukle.AddNewImage(hayvanYukle, 'CameraImg');
  CameraImg.Align = alMostTop;
  CameraImg.Height = 390;
  CameraImg.Width = 300;
  

  
  

 

  
  /*
  testListview = hayvanYukle.AddNewListView(hayvanYukle, 'testListview');
  testListview.Align = alClient;
  */
  btnInsert = hayvanYukle.AddNewButton(hayvanYukle, 'btnInsert', 'Ekle');
  btnInsert.Align = alBottom;
  btnInsert.Height = 55;
  hayvanYukle.AddNewEvent(btnInsert, tbeOnMouseDown, 'getImageBase64');
  /*
  hayvanYukle.clSetTouchIG(igLongTap, testListview);
  hayvanYukle.AddNewEvent(testListview, tbeOnGesture, 'dokunmaDurum');
  */
  database = Clomosy.AppFilesPath + 'sokaktakiDostum.db3';
  password = '';

  // Başlangıçta flag'i False olarak ayarlayın
  isUnit2Open = False;

  try
    Clomosy.DBSQLiteConnect(database, password);
    Clomosy.DBSQLiteQuery.SQL.Text = 'CREATE TABLE IF NOT EXISTS Categories(Id PRIMARY KEY,Yukleyenadi TEXT,KonumBilgisi TEXT,NotBilgisi TEXT,Base64 TEXT);';
    Clomosy.DBSQLiteQuery.OpenOrExecute;
    ShowMessage('Veri tabanına tablo ekleme işlemi başarılı!');
  except
    ShowMessage('Exception class: ' + LastExceptionClassName + ' Exception Message: ' + LastExceptionMessage);
  }

  //GetData;
  hayvanYukle.Run;
}




Cevaplar:
Mesajı Yazan: Developer
Mesaj Tarihi: 07 Ağustos 2024 Saat 10:07
Merhaba Şenol 
Sqlite tablo oluştururken 
CREATE TABLE people ( person_id INTEGER PRIMARY KEY AUTOINCREMENT, first_name text NOT NULL, last_name text NOT NULL );
bir tanımla yaparsan 1 den başlayarak otomatik artar.



Sayfayı Yazdır | Pencereyi Kapat

Forum Software by Web Wiz Forums® version 12.07 - https://www.webwizforums.com
Copyright ©2001-2024 Web Wiz Ltd. - https://www.webwiz.net