SQLite, boyuna gore oldukca basarili, kucuk, servera ve yonetici paneline ihtiyac duymayan bir veri tabani
motorudur. C/C++ dilleri ile gelistirildigi icin genelde C/C++ ile calisan 3rd party open source yazilimlarda
tercih edilir. Qt, ROS gibi buyuk yazilimlarda ve bir cok kucuk boyutlu mobil yazilimlarda kullanilir.
Ilk yazida, C ve SQLite ile basit bir veri tabani olusturmadan bahsedecegim.
Oncelikle SQLite kurulumuna bakalim. Asagidaki ekran ciktisinda libsqlite3-dev uygulama gelistirmemiz icin yeterli.
sudo <package manager> <parameter> libsqlite3-dev
komutu ile kurulumunu yapabiliriz.
Deb: sudo apt-get install libsqlite3-dev
RPM: sudo yum install libsqlite3-dev
Asagidaki kod basit bir veri tabani olusturma, baglanma ve kapama uygulamasi icerir.
sqlite3 *db;
satiri sqlite3 tipinde, tipki bir FILE pointeri gibi database pointeri olusturma islemidir.
int sqlite3_open(const char *filename, sqlite3 **ppDb);
sqlite3_open() fonksiyonu ilk parametre olarak bir database adi alir. SQLite veri tabani icin genelde tercih edilen
uzanti .sqlite olmasina ragmen .db uzantisi da database dosya uzantisi olarak verilebilir. Uygulama icerisinde gecici
olarak bir database kullanilacaksa, bu parametre NULL olarak fonksiyona gonderilir. Ikinci parametre olusturulan veri
tabanini gosterecek sqlite ** tipinde bir degiskendir. Fonksiyon calisirken bir hata ile karsilasirsa 0, herhangi bir
hata yoksa 0 disinda bir integer return eder. Ozellikle Windows kullanicilarinin bu fonksiyonu kullanirken UTF-8 ve UTF-16
karakter formatlarina dikkat etmeleri gerekiyor. sqlite3_open() UTF-8 formatinda calisirken, UTF-16 icin sqlite3_open16()
adli fonksiyon kullaniliyor.
const char *sqlite3_errmsg(sqlite3*);
olusan hata mesajini almak icin kullanilan bir fonksiyondur. SQLite icerisinde birden fazla hata mesaji ve kodu veren
fonksiyon bulunmaktadir.
int sqlite3_close(sqlite3*);
fonksiyonu ise acilan veri tabanini kapatma islemi icin kullanilir. Parametre olarak sqlite pointerini alir. Veri tabani
kapatilirken herhangi bir hata ile karsilasilmazsa, bu fonksiyon SQLITE_OK sabit degerini return eder.
motorudur. C/C++ dilleri ile gelistirildigi icin genelde C/C++ ile calisan 3rd party open source yazilimlarda
tercih edilir. Qt, ROS gibi buyuk yazilimlarda ve bir cok kucuk boyutlu mobil yazilimlarda kullanilir.
Ilk yazida, C ve SQLite ile basit bir veri tabani olusturmadan bahsedecegim.
Oncelikle SQLite kurulumuna bakalim. Asagidaki ekran ciktisinda libsqlite3-dev uygulama gelistirmemiz icin yeterli.
sudo <package manager> <parameter> libsqlite3-dev
komutu ile kurulumunu yapabiliriz.
Deb: sudo apt-get install libsqlite3-dev
RPM: sudo yum install libsqlite3-dev
Asagidaki kod basit bir veri tabani olusturma, baglanma ve kapama uygulamasi icerir.
sqlite3 *db;
satiri sqlite3 tipinde, tipki bir FILE pointeri gibi database pointeri olusturma islemidir.
int sqlite3_open(const char *filename, sqlite3 **ppDb);
sqlite3_open() fonksiyonu ilk parametre olarak bir database adi alir. SQLite veri tabani icin genelde tercih edilen
uzanti .sqlite olmasina ragmen .db uzantisi da database dosya uzantisi olarak verilebilir. Uygulama icerisinde gecici
olarak bir database kullanilacaksa, bu parametre NULL olarak fonksiyona gonderilir. Ikinci parametre olusturulan veri
tabanini gosterecek sqlite ** tipinde bir degiskendir. Fonksiyon calisirken bir hata ile karsilasirsa 0, herhangi bir
hata yoksa 0 disinda bir integer return eder. Ozellikle Windows kullanicilarinin bu fonksiyonu kullanirken UTF-8 ve UTF-16
karakter formatlarina dikkat etmeleri gerekiyor. sqlite3_open() UTF-8 formatinda calisirken, UTF-16 icin sqlite3_open16()
adli fonksiyon kullaniliyor.
const char *sqlite3_errmsg(sqlite3*);
olusan hata mesajini almak icin kullanilan bir fonksiyondur. SQLite icerisinde birden fazla hata mesaji ve kodu veren
fonksiyon bulunmaktadir.
int sqlite3_close(sqlite3*);
fonksiyonu ise acilan veri tabanini kapatma islemi icin kullanilir. Parametre olarak sqlite pointerini alir. Veri tabani
kapatilirken herhangi bir hata ile karsilasilmazsa, bu fonksiyon SQLITE_OK sabit degerini return eder.