1. 程式人生 > >C# 嵌入資料庫SQLite的簡單用法

C# 嵌入資料庫SQLite的簡單用法

原:http://www.oschina.net/code/snippet_584165_47859


引用百度百科的說法:SQLite,是一款輕型的資料庫,是遵守ACID的關係型資料庫管理系統,它包含在一個相對小的C庫中。它是D.RichardHipp建立的公有領域專案。它的設計目標是嵌入式的,而且目前已經在很多嵌入式產品中使用了它,它佔用資源非常的低,在嵌入式裝置中,可能只需要幾百K的記憶體就夠了。它能夠支援Windows/Linux/Unix等等主流的作業系統,同時能夠跟很多程式語言相結合,比如 Tcl、C#、PHP、Java等,還有ODBC介面,同樣比起Mysql、PostgreSQL這兩款開源的世界著名資料庫管理系統來講,它的處理速度比他們都快。SQLite第一個Alpha版本誕生於2000年5月。 至2015年已經有15個年頭,SQLite也迎來了一個版本 SQLite 3已經發布。具體下載地址:


http://system.data.sqlite.org/index.html/doc/trunk/www/downloads.wiki

引用名稱空間:
using System.Data.SQLite;
using System.Data.SQLite.Generic;
using System.Data.Common;
 
        /// <summary>
        ///【測試方法】 簡答的測試SQLite資料庫及表的建立過程
        /// </summary>
        [TestMethod()]
        public void Test()
        {
            string strConnectionString = string.Empty,/*SQLite連線字串,剛開始沒有,暫時留空*/
                   strDataSource = @"D:\test.db";//SQLite資料庫檔案存放實體地址
            //用SQLiteConnectionStringBuilder構建SQLite連線字串
            System.Data.SQLite.SQLiteConnectionStringBuilder scBuilder = new SQLiteConnectionStringBuilder();
            scBuilder.DataSource = strDataSource;//SQLite資料庫地址
            scBuilder.Password = "123456";//密碼
            strConnectionString = scBuilder.ToString();
            using (SQLiteConnection connection = new SQLiteConnection(strConnectionString))
            {
                //驗證資料庫檔案是否存在
                if (System.IO.File.Exists(strDataSource) == false)
                {
                    //建立資料庫檔案
                    SQLiteConnection.CreateFile(strDataSource);
                }
                //開啟資料連線
                connection.Open();
                //Command
                SQLiteCommand command = new SQLiteCommand(connection);
                command.CommandText = "CREATE TABLE tb_User(ID int,UserName varchar(60));INSERT INTO [tb_User](ID,UserName) VALUES(1,'A')";// "CREATE TABLE tb_User(ID int,UserName varchar(60));";
                command.CommandType = System.Data.CommandType.Text;
                //執行SQL
                int iResult = command.ExecuteNonQuery();
                //可省略步驟=======關閉連線
                connection.Close();
            }
        }