Sqlite快速上手使用指南

來源:互聯網
上載者:User

這是網上收集的幾篇教程

1. Sqlite簡明教程
http://www.sqlite.com.cn/MySqlite/4/32.Html
2. Sqlite入門教程
http://www.sqlite.com.cn/MySqlite/4/33.Html
3. Sqlite官方
http://www.sqlite.org/
4. 推薦pysqlite使用指南
http://gashero.yeax.com/?p=13
5. PySqlite User Guide
http://www.initd.org/pub/software/pysqlite/doc/usage-guide.html#brief-tutorial

 

如果您沒耐心看上面這些文章,下面這些介紹也能讓你快速上手:

1.下載 http://www.sqlite.org/sqlite-3_6_22.zip

把這個zip解壓到 c:\windows目錄(其實也就sqlite3.exe一個檔案)

2.建立資料庫

命令列下輸入:
sqlite3.exe "c:\test.db"

沒錯,就是這樣簡單!(跟db4o有點相似)如果硬碟上沒有test.db,則該命令將建立資料庫,如果已經存在,則將開啟資料庫.

3.找一個圖形化的管理工具:Visual SQLite ,官方網址:http://www.visualsqlite.com/ (不過好象打不開,眾所周知的原因...),百度或迅雷一下"Visual SQLite"就能找到下載,安裝好以後類似這樣:

4. 在.net中使用sqlite

先到http://sourceforge.net/projects/sqlite-dotnet2/files/ 下載.Net的驅動

然後就可以用了,下面是示範代碼:

using System;using System.Data.Common;using System.Data.SQLite;using System.Diagnostics;using System.IO;using System.Windows.Forms;namespace SqliteDemo{    class Program    {        static void Main(string[] args)        {            string _dbFile = Application.StartupPath;            _dbFile = _dbFile + "\\test.db";            if (File.Exists(_dbFile)) { File.Delete(_dbFile); }            SQLiteConnection.CreateFile(_dbFile);            DbProviderFactory factory = SQLiteFactory.Instance;            using (DbConnection conn = factory.CreateConnection())            {                // 串連資料庫                conn.ConnectionString = "Data Source=" + _dbFile;                conn.Open();                // 建立資料表                string sql = "create table [person] ([id] INTEGER PRIMARY KEY, [name] varchar(50) COLLATE NOCASE)";                DbCommand cmd = conn.CreateCommand();                cmd.Connection = conn;                cmd.CommandText = sql;                cmd.ExecuteNonQuery();                // 添加參數                cmd.Parameters.Add(cmd.CreateParameter());                // 開始計時                Stopwatch watch = new Stopwatch();                watch.Start();                DbTransaction trans = conn.BeginTransaction(); // <-------------------                try                {                    // 連續插入50w條記錄                    for (int i = 0; i < 500000; i++)                    {                        cmd.CommandText = "insert into [person] ([name]) values (?)";                        cmd.Parameters[0].Value = i.ToString();                        cmd.ExecuteNonQuery();                    }                    trans.Commit(); // <-------------------                }                catch                {                    trans.Rollback(); // <-------------------                    throw; // <-------------------                }                // 停止計時                watch.Stop();                Console.WriteLine(watch.Elapsed);                Console.Read();            }        }    }}

在我的ThinkPad T61P上跑的結果,用事務插入50w條記錄,大概只用了3秒時間(test.db增大到7M左右)。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.