Windows Phone(二) WP7資料庫連接(SQLite資料庫)

來源:互聯網
上載者:User

本文算是整理,了ArcGIS_Mobile 和 錦燕雲 的博文:

地址: http://blog.csdn.net/arcgis_mobile/article/details/7597519

        參考文章

本文是一個簡要的WP7資料庫連接(SQLite資料庫)操作過程,圖文並茂,適應各種人士,O(∩_∩)O~...

準備工作: 下載我弄好的壓縮包http://115.com/file/an0tifop#SQLite.rar  (暫時存在115網盤的,開啟連結後直接點 "普通下載" 就OK了)

1. 建立資料庫

第一步:建立 Windows Phone應用程式,目標平台選擇 wpos 7.1  (我給項目取名為TestSQLite)

第二步:添加壓縮包中 Community.CsharpSqlite.WP.dll 的引用:

    (引用,單擊滑鼠右鍵-->添加引用...)

第三步: 添加四個按鈕 :  注意命名(btnOpen 建立並開啟資料庫 ,btnPopulate  建立表 ,btnClear 清空資料,btnClose,關閉串連)

第四步: 添加對SQLite的引用:

using SQLiteClient;

第五步: 添加SQLite資料庫連接變數:

SQLiteConnection mySQLiteDB = null;

 public partial class MainPage : PhoneApplicationPage    {        SQLiteConnection mySQLiteDB = null;        // 建構函式        public MainPage()        {            InitializeComponent();        }

第六步: 給“Open”按鈕添加事件,建立並開啟資料庫:

Open按鈕點擊事件

 1 private void btnOpen_Click(object sender, RoutedEventArgs e) 2   3         { 4   5             if (mySQLiteDB == null) 6   7             { 8   9                 mySQLiteDB = new SQLiteConnection("TestSQLiteDB");10  11                 mySQLiteDB.Open();12  13  14  15                 btnOpen.IsEnabled = false;16  17                 btnClose.IsEnabled = true;18  19                 btnClear.IsEnabled = false;20  21                 btnPopulate.IsEnabled = true;22  23             }24  25         }

第七步:建立表,並往表中填充資料:

建立資料表並添加資料

private void btnPopulate_Click(object sender, RoutedEventArgs e)         {             //建立表RegisteredStudents,有3個屬性:id、姓名、學號             SQLiteCommand cmd = mySQLiteDB.CreateCommand("Create table RegisteredStudents (id int primary key,name text,zipcode numeric(7))");             int i = cmd.ExecuteNonQuery();             int id = 0;             string name = "Name" + id;             int zipcode = 98000;             for (int j = 0; j < 10; j++)             {                 id++;                 name = "Name" + id;                 zipcode = 98000 + id;                 cmd.CommandText = " Insert into RegisteredStudents (id, name, zipcode) values (" + id +",\"" + name + "\"," + zipcode +")";                 i = cmd.ExecuteNonQuery();             }               btnPopulate.IsEnabled = false;             btnClear.IsEnabled = true;         }

第八步:清空表中的資料:

清空表中資料

private void btnClear_Click(object sender, RoutedEventArgs e)         {             SQLiteCommand cmd = mySQLiteDB.CreateCommand("drop table RegisteredStudents");             int i = cmd.ExecuteNonQuery();               btnPopulate.IsEnabled = true;             btnClear.IsEnabled = false;         }

第九步: 斷開資料庫連接,關閉資料庫:

取消連結,關閉資料庫

private void btnClose_Click(object sender, RoutedEventArgs e)         {             if (mySQLiteDB != null)             {                 mySQLiteDB.Dispose();                 mySQLiteDB = null;                 btnOpen.IsEnabled = true;                 btnPopulate.IsEnabled = false;                 btnClear.IsEnabled = false;                 btnClose.IsEnabled = false;             }         }

運行程式,點擊open可以在WP的模擬器的隔離儲存區 (Isolated Storage)空間中建立名為“TestSQLiteDB”資料庫,點擊populate按鈕可以為其填充資料,點擊clear可以清空資料庫中的資料,close關閉資料庫連接;

2.擷取資料庫檔案,

第一步: 直接雙擊  WindowsPhonePowerTools.application 檔案,

           

            稍等片刻後出現以下介面, 有三個選項,選擇(512M這一項) , 真機就選擇第一項,之後點擊CONNECT

           

第二步: 點擊CONNECT後:出現以下頁面點擊BROWSE按鈕,選擇你建立的這個Windows Phone項目下的xap檔案

    (既是編譯之後,Debug下的xap,例如我的XAP位置: C:\Users\RY\Documents\Visual Studio 2010\Projects\FirstWP\TestSQLite\Bin\Debug) 

第三步: 再點擊 INSTALL,稍等片刻,這個地方,我2 了一把,以為點擊INSTALL就OK 了,

       實際上是要點擊  :,

     之後出現:.....O(∩_∩)O哈哈~  你看到了吧-->TestSQLite,

              

點開就能看到資料庫了...就是這個TestSQLiteDB,點擊 GET 按鈕,  將這個資料庫檔案儲存到案頭 (注意,如果你還處於調試狀態,此時要停止調試,否則會報錯,..),

3.操作資料庫

安裝壓縮包中的 SQLiteManagerSetup 工具

 安裝好後,雙擊,後點擊 Use Demo -->Continue,找到儲存在案頭的TestSQLiteDB,開啟:

          

     以上,這就是你建立的資料庫,現在你可以操作它了....

 4. 補充一點SQLite的東東:

    1.SQLite資料類型:  無類型(Typelessness) 意味著可以儲存任何類型的資料,但最好還是添加上資料類型,這樣方便維護.
        2. SQL語句:
      建立表:
      create Students(id int,name text,age int)
      插入資料:
      insert into Students (id,name,age) values( 3,"EE",23);
      insert into Students (id,name,age) values( 4,"AA",24);
      insert into Students (id,name,age) values( 5,"VV",25);
      資料查詢:
      SELECT * FROM Students WHERE name =  'EE' ORDER BY id

    如果你有什麼問題,可以給我留言,O(∩_∩)O謝謝!

    歡迎各種磚塊,  ...O(∩_∩)O哈哈~...

    

 

 

 

 

 

 

 

 

 

 

 

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.