Kişisel Web Sitesi                         
Gezinti Bağlantılarını Atla
Site içi arama...
Bul...
SQLite 18.08.2011

 

Daha öncelerden adını duyduğum fakat önemsemediğim, şimdilerde kendini epeyce geliştirmiş tek dosyalık SQL Server…

Tek dosya üzerinde çok yüksek verileri yönetebilecek kapasiteye sahip ve üzerinde view ve trigger desteği bulunmakta. Garip ama Mozilla firefox üzerine kurulacak bir eklenti ile database oluşturmak ve yönetmek mümkün. Microsoft .NET üzerinde kullanabilmek için küçük bir kurulum yapmak gerekiyor. Bu kurulumdan sonra System.Data.SqlLite NameSpace’i üzerinden kullanılabilir duruma geliyor. Eklentiyi buradan indirebilirsiniz.

 

Aşağıda SQLite için .NET üzerinde hazırladığım bir örnek bulunmakta. Bu örnek ile oluşturduğum veriyi 13 GB boyutlarına ulaştırdım ve sistemin performansı bu boyutlarda bir DB’ye göre hiç etkilenmedi. Üstelik paralel olarak veri ekleme ve sorgulama da yaptım ve yine etkilenmedi. Örneğin tamamını buradan indirebilirsiniz.

.NET Örneği:

Örnekte öncelike bir database oluşturmamız gerekiyor.

 

        private void button1_Click(object sender, EventArgs e)

        {

            System.Data.SQLite.SQLiteConnection cnNew;

            cnNew = new System.Data.SQLite.SQLiteConnection("Data Source = liteDB.db; Version = 3; New = True; Password=123");

            try

            {

               

                cnNew.Open();

                System.Data.SQLite.SQLiteCommand cmd = new System.Data.SQLite.SQLiteCommand();

                cmd.CommandText = "CREATE TABLE Stamping(ID INTEGER PRIMARY KEY AUTOINCREMENT,DATETIMESTAMP DEFAULT (datetime('now','localtime')),DATESTAMP DEFAULT CURRENT_DATE,FULLPATH VARCHAR(1000),FILENAME VARCHAR(1000))";

                cmd.Connection = cnNew;

                cmd.ExecuteNonQuery();

                cnNew.Close();

            }

            catch (Exception Ex)

            {

                MessageBox.Show(Ex.Message);

            }

            cnNew.Close();

        }

 

Daha Sonra da bu DB’ye örnek olması açısından sistemdeki *.cpl uzantılı dosyaların yollarını ekliyorum.

        private void button3_Click(object sender, EventArgs e)

        {

            System.Data.SQLite.SQLiteConnection cn;

            cn = new System.Data.SQLite.SQLiteConnection("Data Source=liteDB.db;Version=3; Password=123");

            try

            {

                cn.Open();

                System.Data.SQLite.SQLiteCommand cmd = new System.Data.SQLite.SQLiteCommand();

                cmd.Connection = cn;

 

 

                string[] fileList = System.IO.Directory.GetFiles(@"c:\windows", "*.cpl", System.IO.SearchOption.AllDirectories);

                for (int i = 0; i < fileList.Length; i++)

                {

                    System.IO.FileInfo fl = new System.IO.FileInfo(fileList[i]);

                    string filename = fl.Name;

                    cmd.CommandText = "INSERT INTO Stamping(FILENAME,FULLPATH) VALUES ('" + filename.Replace("'", "") + "','" + fileList[i].Replace("'", "") + "')";

                    cmd.ExecuteNonQuery();

 

                    Application.DoEvents();

                    label2.Text = i.ToString() + " Records Affected";

                }

 

                cn.Close();

            }

            catch (Exception Ex)

            {

                MessageBox.Show(Ex.Message);

            }

            cn.Close();

        }

 

Show All butonu ile eklenen bu dosyaları görüntüleyebiliyorum.

        private void button2_Click(object sender, EventArgs e)

        {

            System.Data.SQLite.SQLiteConnection cn;

            cn = new System.Data.SQLite.SQLiteConnection("Data Source=liteDB.db;Version=3; Password=123");

            try

            {

 

                System.Data.DataSet ds = new DataSet();

                System.Data.SQLite.SQLiteCommand cmd = new System.Data.SQLite.SQLiteCommand();

                cmd.Connection = cn;

                cmd.CommandText = "select * from Stamping";

 

                System.Data.SQLite.SQLiteDataAdapter ad = new System.Data.SQLite.SQLiteDataAdapter(cmd);

                ad.Fill(ds);

                dataGridView1.DataSource = ds.Tables[0].DefaultView;

            }

            catch (Exception Ex)

            {

                MessageBox.Show(Ex.Message);

            }

            cn.Close();

        }

 

 

 

 

 

 

 

 


bulent
EN SON GÖNDERİLENLER
SQLite
bulent (1 Yorum)
 Yazılım Üzerine
Herkes kendi mizaç ve karakterine göre iş yapar
bulent (1 Yorum)
 Karalama Defteri
Sql Server 2005 Sorgu ile Profiler Yapma
bulent (2 Yorum)
 Yazılım Üzerine
SQL Server 2005 Profiler için SPID Filtreleme
bulent (0 Yorum)
 Yazılım Üzerine
SQL PAGGING
bulent (0 Yorum)
 Yazılım Üzerine
javascript ile hoş bir sayfa efekti
bulent (0 Yorum)
 Yazılım Üzerine
ASP.NET FCK EDITOR
bulent (0 Yorum)
 Yazılım Üzerine
Sevginin Gücü
(0 Yorum)
 Karalama Defteri
Programlamanın Tao'su
Bülent (0 Yorum)
 Yazılım Üzerine
Gaza Gelmek
Bülent (0 Yorum)
 Karalama Defteri
Yorum Farkı...
Bülent (0 Yorum)
 Karalama Defteri
Öğrenci geçmeli mi?
Bülent (1 Yorum)
 Filmler ve Biyografiler
O Halde Sevebilirsiniz
Bülent (0 Yorum)
 Karalama Defteri
Dürüst Cevaplar
Bülent (0 Yorum)
 Karalama Defteri
5 Önemli Ders
Bulent (0 Yorum)
 Karalama Defteri
9 İhtimal
Bülent (0 Yorum)
 Karalama Defteri
Ruhlarda Bir Garip Esinti... Farid Farjad
Bülent (1 Yorum)
 Filmler ve Biyografiler
İmkansız Aşk
Bülent (0 Yorum)
 Filmler ve Biyografiler
Paylaşımın 1 Numaralı Adresi
By-Matrax (0 Yorum)
 Faydalı Siteler
Voltaire-Candide yada iyimserlik Üzerine (Bölüm 2)
Bülent (0 Yorum)
 Karalama Defteri
Gelecek++
Postback Diyorki...
" Kisi bu alçak dünyaya tenezzül etti mi, bala kapilmis sinege benzer." - Sadi
SON DAKİKA HABERLERİ