WP8.1中使用Sqlite轻型数据库开发教程

最近几个月开始将WP8的应用迁移到WP8.1,发现很多API都变了。

最令我印象深刻也最意外的一点是:【找不到MessageBox】了。

卧槽,找不到MessageBox...(此处省略100字)

回归正题,在WP8阶段,微软为本地数据库的操作提供了一系列API,需要的朋友可以通过:http://msdn.microsoft.com/zh-cn/library/hh202860查看。

不过在WP8.1(XAML)中这些API已经无法使用了,通过搜索一些资料,最终把以前的一些本地数据库操作API替换成Sqlite的版本。

步骤

1.建立一个WP8.1的项目。

2.画一个简单的UI,如图:

 

开发教程-sqlite数据库教程">

 

app具有一个简单的功能:将“姓名”和“年龄”数据保存到数据库表中。

app的下半部分是一个列表(现在没有任何数据所以看不出来),用于显示当前数据表中的所有信息。

3.建立模型

public class Person     {         public int ID         {             get;             set;         }          public string Name         {             get;             set;         }          public int Age         {             get;             set;         }     }

4.依次选择VS菜单栏:【工具】--》【扩展和更新】-->【联机搜索Sqllite】,如图:

 

 

下载Sqlite for windows phone8.1,我这里已经下载好了。

5.下载安装完毕之后需要重启VS。

6.添加对Sqlite的引用,如图:

 

 

7.接下来编译会发生一个错误,需要将编译架构调整为“ARM”或者“X86”.

8.添加的sqlite引用是C++开发的,在项目中没有办法直接使用。我们还需要在项目中添加一些别人封装好的类。

9.打开Nuget管理器,搜索“Sqlite”,安装“Sqlite-net”,如图:

 

 

10.安装完毕后会发现项目中多了两个类,我们操作Sqlite数据库主要也就是使用这两个类中的方法和属性。如图:

 

 

11.接下来可以做点真正有意义的事情了。首先得我们需要告诉Sqlite哪个属性是主键吧?

我们把“ID”作为主键。

ublic class Person     {         [PrimaryKey]         [AutoIncrement]         public int ID         {             get;             set;         }          public string Name         {             get;             set;         }          public int Age         {             get;             set;         }     }

特性"PrimaryKey"表明特性对应的属性作为表的主键。“AutoIncrement”表明这是一个自增列。

12.创建Person表。

/// <summary>         /// 创建Person表         /// </summary>         /// <returns></returns>         private async Task<SQLiteAsyncConnection> CreatePersonTableAsync()         {             var conn = new SQLiteAsyncConnection(localDBPath);             await conn.CreateTableAsync<Person>();              return conn;         }

localDBPath是数据库文件的路径。

我们可以通过返回的“SQLiteAsyncConnection”对象,对Person表进行增删查改的操作。

13.目前为止,准备工作都做好了。可以书写按钮点击事件的逻辑了。

private async void AddData_Tapped(object sender, TappedRoutedEventArgs e)         {             //构造Person对象             Person person = new Person();             person.Name = textboxName.Text;             person.Age = int.Parse(textboxAge.Text);              //插入到数据库             var conn = await CreatePersonTableAsync();             await conn.InsertAsync(person);         }

需要注意的是CreateTableAsync方法并不会覆盖掉已有的Table。

备注

这篇文章主要帮助一些不知道如何在WP8.1中使用Sqlite的朋友快速上手。

文章中贴出的代码并没有对一些异常做处理,实际项目中这是不可能的。主要是方便大家看到最精要的部分。

其他数据库的操作方法我就不一一列举了,查看“SQLiteAsync”类的代码,5分钟就可以知道可以通过SQLiteAsync做哪些事情。

以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索数据库
, 编译
, int
, api
, 搜索
属性
sqlite数据库教程、sqlite数据库安装教程、sqlite数据库视频教程、轻型数据库、轻型的数据库,以便于您获取更多的相关知识。

时间: 2024-10-25 22:26:26

WP8.1中使用Sqlite轻型数据库开发教程的相关文章

史上最详细的Android原生APP中添加ReactNative进行混合开发教程

背景 React Native出来已经一段时间了,相对来说也算稳定了,在很多的企业中都实际使用他们,混合开发已经是未来的一种趋势,混合开发中使用的技术很多,不外乎Html5.JS框架通过一定的技术和原始交互,目前主流混合开发React Native.Cordova.APICloud.MUI.AppCan.Sencha Touch.jQuery Mobile等等(其他的小伙伴们自己收集),目前网上写教程的人很多,但是React Native更新速度很快,根据他们的教程,中间会遇到各种问题,今天我和

Mac OS X中pypyodbc访问mdb数据库实例教程

首先使用brew安装unixodbc和mdbtools,unixodbc是odbc驱动管理器,mdbtools提供了一组mdb操作工具,更重要的是mdbtools提供了mdb驱动程序. $ brew install unixodbc $ brew install mdbtools 但是安装完成后发现/usr/local/lib目录中没有mdbtools驱动动态链接库libmdbodbc.dylib 查看mdbtools选项可以发现: $ brew options mdbtools --with-

SQL Server 2005数据库开发概述

本文讨论了一些SQL Server 2005的新特性,这些新特性将帮助你创建一个新型的数据库应用程序. 随着Microsoft SQL Server 2005 Beta 2的发布,数据库开发的方式正在改变中.作为一个数据库开发人员,现在你可以更好的把工作关注在功能.对本机格式的数据的访问(如XML).以及利用强大的数据库服务器创建更复杂的系统上.数据库开发工作正前所未有的越来越集成,你所需要的所有工具都触手可及. .NET Framework集成 随着Microsoft SQLServer200

《测试驱动数据库开发》目录—导读

版权声明 测试驱动数据库开发 Authorized translation from the English language edition, entitled Test-Driven Database Development: Unlocking Agility, 9780321784124 by Max Guernsey, III, published by Pearson Education, Inc., publishing as Addison-Wesley, Copyright 2

轻型数据库SQLite结合PHP的开发

数据|数据库 SQLite是一款轻型的数据库,它的设计目标是嵌入式的,而且目前已经在很多嵌入式产品中使用了它,它占用资源非常的低,在嵌入式设备中,可能只需要几百K的内存就够了.它能够支持Windows/Linux/Unix等等主流的操作系统,同时能够跟很多程序语言相结合,比如Tcl.PHP.Java等,还有ODBC接口,同样比起Mysql.PostgreSQL这两款开源世界著名的数据库管理系统来讲,它的处理速度比他们都快. SQLite虽然很小巧,但是支持的SQL语句不会逊色于其他开源数据库,它

Android开发中使用SQLite 数据库

SQPte 一个非常流行的嵌入式数据库,它支持 SQL 语言,并且只利用很少的内存就有很好的性能.此外它还是开源的,任何人都可以使用它.许多开源项目((Mozilla, PHP, Python)都使用了 SQPte. SQPte 由以下几个组件组成:SQL 编译器.内核.后端以及附件.SQPte 通过利用虚拟机和虚拟数据库引擎(VDBE),使调试.修改和扩展 SQPte 的内核变得更加方便. 图 1. SQPte 内部结构 开发中使用SQLite 数据库-android sqlite数据库"&g

【ANDROID游戏开发十三】(保存游戏数据 [下文])详解SQLITE存储方式,并把SQLITE的数据库文件存储在SD卡中!!!

本站文章均为 李华明Himi 原创,转载务必在明显处注明:  转载自[黑米GameDev街区] 原文链接: http://www.himigame.com/android-game/329.html ----------------------- 『很多童鞋说我的代码运行后,点击home或者back后会程序异常,如果你也这样遇到过,那么你肯定没有仔细读完Himi的博文,第十九篇Himi专门写了关于这些错误的原因和解决方法,这里我在博客都补充说明下,省的童鞋们总疑惑这一块:请点击下面联系进入阅读:

sqlite-Android开发中与Sqlite数据库相似的数据库

问题描述 Android开发中与Sqlite数据库相似的数据库 目前Android开发中本地数据库只能用Sqlite数据库嘛?有没有其他数据库可选?(本人知道Sqlite这个很好,但是新手想知道都有什么选择) 解决方案 Android开发之Sqlite数据库android开发之sqlite数据库增删改查Android开发之SQLite数据库 解决方案二: 只能用sqlite,但是对其支持的框架可选 解决方案三: 好像是只能用SQLite 解决方案四: 还是选通用的吧,而且貌似只有sqlite 解

Android中操作SQLite数据库快速入门教程_Android

SQLite是Android平台软件开发中会经常用到的数据库产品,作为一款轻型数据库,SQLite的设计目标就是是嵌入式的,而且目前已经在很多嵌入式产品中使用了它,它占用资源非常的低,在嵌入式设备中,可能只需要几百K的内存就够.下面我们一起来看看针对Android平台的SQlite 3的使用. 以下概念都是在Android平台的SQlite限制下的理解: 数据库基础概念 1.SQlite 通过文件来保存数据库,一个文件就是一个数据库. 2.数据库里又包含数个表格: 3.每个表格里面包含了多个记录