SQLite ve C

Kurtbeyi

Misafir Editör
Katılım
5 Şubat 2022
Mesajlar
501
Tepkime puanı
44
Konum
istanbul
Cinsiyet
  1. Bay
Takım
Fenerbahçe
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.


connection4e5dc.png




sqlite3 *db;

satiri sqlite3 tipinde, tipki bir FILE pointer i 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 pointer ini alir. Veri tabani
kapatilirken herhangi bir hata ile karsilasilmazsa, bu fonksiyon SQLITE_OK sabit degerini return eder.
 

Benzer konular

İçerik sağlayıcı "paylaşım" sitelerinden biri olan Harbimekan.Com Forum, Eğlence ve Güncel Paylaşım Platformu Adresimizde 5651 Sayılı Kanun’un 8. Maddesine ve T.C.K’nın 125. Maddesine göre TÜM ÜYELERİMİZ yaptıkları paylaşımlardan sorumludur. Harbimekan.Com sitesindeki konular yada mesajlar hakkında yapılacak tüm hukuksal Şikayetler için info@harbimekan.com yada iletişim sayfası üzerinden iletişime geçilmesi halinde ilgili kanunlar ve yönetmelikler çerçevesinde en geç 3 Gün (72 Saat) içerisinde Forum yönetimi olarak tarafımızdan gereken işlemler yapılacaktır.

Bu Site, Bilim ve Sağlık Haber Ajansı Üyesidir.

Yığıntı - 8kez - kaynak mağazam - Uğur Ağdaş