Windows Mobile開發之SQLite的使用

SQLite數據庫作爲一個開源的數據庫,在IOS、Android等平臺上得到了很廣泛的應用,在運行效率上比起微軟的SQLCE效率高很多,在網上有大家做性能比較。
參考博客如下:
http://www.cnblogs.com/egmkang/archive/2009/07/12/1521997.html
WM上使用SQLite及安裝:
1.首先下載SQLite安裝程序,有的是exe安裝包,有的是ZIP壓縮包,有的大大反應說,zip包裏面的幾個重要文件即可。
將解壓的BIN目錄下的CompareFramework目錄下的SQLite.Interop.066.DLL文件放到WM設備或者是WM模擬器的相應的項目文件夾中;
將BIN目錄下的System.Data.SQLite.DLL文件加載到VS2008中,即添加引用即可。如果開發的是Windows Mobile項目時,VS2008應該添加引用的System.Data.SQLite.DLL文件來源自BIN目錄下的CompareFramework目錄。
2.這樣還需要一個SQLite管理工具,管理工具有很多,我用的是SQLiteSpy_1.9.1。
3.具體使用SQLite程序如下:
代碼如下:

	//將DataSet數據保存到SQLite數據庫中
	//WM項目運行時所在的目錄
            string path = Path.GetDirectoryName(System.Reflection.Assembly.GetExecutingAssembly().GetName().CodeBase) + "\\Test.db3";
            SQLiteConnection conn = new SQLiteConnection("Data Source=" + path);
            conn.Open();
            SQLiteCommand cmd = conn.CreateCommand();
	//插入操作使用事物
            SQLiteTransaction tx = conn.BeginTransaction();
            cmd.Transaction = tx;
            try
            {
                foreach (DataRow row in ds.Tables["Users"].Rows)
                {

                    string sql = "insert into Users (name,age) values ('" + row[0] + "','" + row[1] + "')";
                    cmd.CommandText = sql;
                    cmd.ExecuteNonQuery();
                }
                tx.Commit();
                MessageBox.Show("插入數據成功!!");
            }
            catch (System.Data.SQLite.SQLiteException E)
            {
                tx.Rollback();
                MessageBox.Show("插入數據失敗!!");

            }finally{
				conn.Close();
			}
------------------------------------------------------------------------------
	//快速插入數據
	conn.Open();
	string sql1 = "insert into Users (name,age) values ('Hello',23)";
	SQLiteCommand cmd = new SQLiteCommand(sql1, conn);
	cmd.ExecuteNonQuery();
----------------------------------------------------------------------------------			
            //讀取數據 並顯示
	try{
            string sql2 = "select * from Users";
            conn.Open();
            SQLiteDataAdapter adapter = new SQLiteDataAdapter(sql2, conn);

            DataTable datatable = new DataTable();
            adapter.Fill(datatable);
            dataGrid1.DataSource = datatable;
           }
		   catch(Exception e){
				Console.WriteLine(e.ToString());
		   }finally{
				conn.Close();
			}


 

發佈了90 篇原創文章 · 獲贊 13 · 訪問量 31萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章