Windows Phone8 中如何引用 SQLite 數據庫2


本博文編寫環境 VS2013 + WP8 SDK

上篇介紹完了SQLite在wp中的部署(具體請參閱 Windows Phone8 中如何引用 SQLite 數據庫),下面來看如何使用 SQLite 數據庫

SQLite的數據庫都是程序運行時自動創建的,我們操作的數據庫是位於隔離存儲空間里的。

這是我僅做了簡單的數據庫操作:

1.創建數據庫鏈接

private SQLiteAsyncConnection GetConn()
        {
            return new SQLiteAsyncConnection(ApplicationData.Current.LocalFolder.Path + "\\people.db");
        }

  

2.創建數據庫

private async void btnCreateDb_Click(object sender, RoutedEventArgs e)
        {
            SQLiteAsyncConnection conn = GetConn();

            await conn.CreateTableAsync<Student>();
            MessageBox.Show("創建成功");
        }

  

3.插入數據

private async void btnAdd_Click(object sender, RoutedEventArgs e)
        {
            SQLiteAsyncConnection conn = GetConn();
            Model.Student student = new Model.Student
            {
                Name = "張三",
                Age = 30,
                Sex = "男"
            };
            await conn.InsertAsync(student);
            student = new Model.Student
            {
                Name = "李四",
                Age = 25,
                Sex = "男"
            };
            await conn.InsertAsync(student);
            student = new Model.Student
            {
                Name = "小華",
                Age = 23,
                Sex = "女",
                Remark = "優秀"
            };
            await conn.InsertAsync(student);
            MessageBox.Show("插入數據成功!");
        }

  

4.查詢數據

private async void btnQuery_Click(object sender, RoutedEventArgs e)
        {
            SQLiteAsyncConnection conn = GetConn();
            var query = conn.Table<Student>();//.Where(x => x.Name == "小華");
            var result = await query.ToListAsync();

            this.stuList.ItemsSource = result;

            foreach (var item in await conn.Table<Student>().ToListAsync())
            {
                Debug.WriteLine(string.Format("NO:{0} NAME:{1} SEX:{2} AGE:{3} REMARK:{4}", item.Id, item.Name, item.Sex, item.Age, item.Remark));
            }
        }

  

5.更新數據

 private async void btnUpdate_Click(object sender, RoutedEventArgs e)
        {
            //ApplicationData.Current.LocalFolder.Path + "\\people.db"
            SQLiteAsyncConnection conn = GetConn();
            var query = conn.Table<Student>().Where(x => x.Name == "小華");
            var result = await query.ToListAsync();
            foreach (var item in result)
            {
                item.Age = 35;
                await conn.UpdateAsync(item);
                MessageBox.Show("數據更新成功!");
            }
        }

程序運行效果如下圖所示

 怎么樣,是不是很簡單哦,這里說明一下,在操作SQLite數據庫時也可以不使用SQLiteAsync.cs 和SQLite.cs ,可以自己寫 sql 語句的方式來操作,那樣會更加靈活些。

源碼下載 請點擊

 

如何查看wp8獨立存儲中的文件呢,大家可以 打開 http://wptools.codeplex.com/ 下載
Windows Phone Power Tools ,使用這個軟件可以方便查看保存在獨立存儲中的文件,也可以添加、導出、刪除等操作,運行界面如圖所示:

 


免責聲明!

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



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