Windows Phone(二) WP7數據庫連接(SQLite數據庫)


本文算是整理,了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的模擬器的獨立存儲空間中創建名為“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哈哈~...

    

 

 


 

 

 

 

 

 

 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM