在Win8 Mertro 中使用SQLite

分类:             .net 开发              2012-09-19 18:17     1229人阅读     评论(3)     收藏     举报    

首先先介绍下sqlite在metro下应用简介:

sqlite的网是完全符合WinRT的Metro风格的应用程序,并通过微软的商店验证。

数据库文件将始终被创建的路径返回:

Windows.Storage.ApplicationData.Current.LocalFolder.Path。

您将需要一个副本的sqlite3.dll已编译对SQLite.org的WinRT分支。虽然这不是在主流支

持,它被预期。你可以找到更多信息并下载适当的编译sqlite3.dll从[

https://github.com/mbrit/sqlite-metrostyle ]。

我们提供了一个WinRT / Windows 8的sqlite3.dll

好了:现在开始先介绍下怎么安装sqlite有图有真相:

首先1.创建一个metro项目

2.在工具,选择扩展与更新中,选择联机(online),在搜索框内输入sqlite

3.将会发现一个叫做sqlite for window runtime点击安装

4.

5.在引用中,选择windows,扩展,把Mircosoft visual c++ runtime package以及sqlite for windows runtime二者勾选上

6.点选解决方案,选择属性,配置属性,将平台选择为对应的平台,暂时不支持any cpu

7.点击工程,选择管理nuget包(如果没有需要另行安装),在联机中搜索sqlite-net,点击安装

8,安装成功后会生成两个文件:SQLite.cs与SQLiteAsync到此完成安装部署

下面就是举一个简单的举例进行了解sqlite的使用;

首先:声明一个person类也就是表主键自动增长

class Person

{

[SQLite.AutoIncrement, SQLite.PrimaryKey]

public int ID { get; set; }

public string FirstName { get; set; }

public string LastName { get; set; }

}

2.写一个方法用于创建数据库db1.sqlite和表person

private async void Create()

{

//数据文件保存的位置

Var  dbPath=Path.Combine(Windows.Storage.ApplicationData.Current.LocalFolder.Path, "db1.sqlite");

//打开创建数据库和表

using (var db = new SQLite.SQLiteConnection(dbPath))

{

//创建表

db.CreateTable<Person>();

}

}

3.简单的操作sqlite数据库(增,删,改,查询)

//sqlite语句简单示例

//连接数据库

var dbPath = Path.Combine(Windows.Storage.ApplicationData.Current.LocalFolder.Path, "db1.sqlite");

var db = new SQLite.SQLiteConnection(dbPath);

//插入操作。首先声明一个集合

ObservableCollection<Person> Collection = new ObservableCollection<Person>();

//单条插入语句

db.Insert(new Person() { FirstName = "liufei", LastName = "Sky" });

Collection.Add(new Person() { FirstName = "liufei1", LastName = "Sky" });

Collection.Add(new Person() { FirstName = "liufei3", LastName = "Sky" });

//多条插入集合

db.InsertAll(Collection);

//更新语句

SQLiteCommand cmd = db.CreateCommand("update person set FirstName='lisa'where FirstName='liufei'");

cmd.ExecuteNonQuery();

//单行删除操作

db.Delete<Person>(new Person() { ID = 1 });

//多行删除

db.DeleteAll<Person>();

//查询所有数据绑定到UI

List<object> list = db.Query(new TableMapping(typeof(Person)), "select *  from  Person");

lt.ItemsSource = list;

在Win8 Mertro 中使用SQLite的更多相关文章

  1. Visual Studio 2010(.NET 4.0)中使用SQLite.NET

    Visual Studio 2010(.NET 4.0)中使用SQLite.NET   2011年4月1日 | 分类: DataBase, DOTNET | 标签: .net 4.0, SQLite. ...

  2. cocos2d-x 3.0rc2中读取sqlite文件

    cocos2d-x 3.0rc2中读取sqlite文件的方式,在Android中直接读取软件内的会失败.须要复制到可写的路径下 sqlite3* dbFile = NULL; std::string ...

  3. Android虚拟机中的sqlite数据库文件

    Android虚拟机中的sqlite数据库文件 ①

  4. Android中的SQLite使用学习

    Android中的SQLite使用学习 SQLite是非常流行的嵌入式关系型数据库,轻载, 速度快,而且是开源.在Android中,runtime提供SQLite,所以我们可以使用SQLite,而且是 ...

  5. C#中使用SQLite数据库简介(上)

    [SQLite数据库] SQLite是一个开源的轻量级的桌面型数据库,它将几乎所有数据库要素(包括定义.表.索引和数据本身)都保存在一个单一的文件中.SQLite用C编写实现,它在内存消耗.文件体积. ...

  6. 在项目中使用SQLite数据库小结

    ------------------------------------------------------------------------推荐: - VS2012 使用 1.0.84 版的库 - ...

  7. Android中使用sqlite笔记

    1.实现SQLiteHelper来在android中使用SQLite.代码如下,来自android官网. public class FeedReaderDbHelper extends SQLiteO ...

  8. Android 开发中使用 SQLite 数据库

    SQLite 介绍 SQLite 一个非常流行的嵌入式数据库,它支持 SQL 语言,并且只利用很少的内存就有很好的性能. 此外它还是开源的,任何人都可以使用它.许多开源项目((Mozilla, PHP ...

  9. 2014-08-01 ASP.NET中对SQLite数据库的操作——ADO.NET

    今天是在吾索实习的第18天.我主要学习了如何在ASP.NET中对SQLite数据库的操作,其基本操作如下: 添加引用System.Data.SQLite.dll(PS:在网页里面任意找到适合的.NET ...

随机推荐

  1. POJ2418——Hardwood Species(map映射)

    Hardwood Species DescriptionHardwoods are the botanical group of trees that have broad leaves, produ ...

  2. Windbg调试命令详解(3)

    3 进程与线程 既可以显示进程和线程列表,又可以显示指定进程或线程的详细信息.调试命令可以提供比taskmgr更详尽的进程资料,在调试过程中不可或缺. 3.1 进程命令 进程命令包括这些内容:显示进程 ...

  3. System.Drawing.Design.UITypeEditor自定义控件属性GetEditStyle(ITypeDescriptorContext context),EditValue(ITypeDescriptorContext context, IServiceProvider provider, object value)

    using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.C ...

  4. C# CLR及程序集部署浅析

    摘 要 .NET Framework 到底是什么?公共语言运行时和 .NET Framework 类库分别指的是什么东西?CLR. CLS. CTS.FCL等这些又是什么?为什么出现程序集的概念?它与 ...

  5. MarshalByRefObject浅析

    首先了解一下不同应用程序域中的对象的通信方式有两种: 一种是跨应用程序域边界传输对象副本 一种是使用代理交换消息. 简单来讲,继承此类的对象可以跨越应用程序域边界被引用,甚至被远程引用. 当一个对象需 ...

  6. CentOS 7 安装 tomcat7.0

    安装tomcat: [root@admin local]# cd /usr/local[root@admin local]# tar -zxv -f apache-tomcat-7.0.29.tar. ...

  7. 【JMeter】JMeter完成一个MySql压力测试

    jmeter也可以用来做数据库的压力测试,并且兼容各种数据库类型,只需要更改对应的数据库驱动类和url.以下为整理到的数据库驱动类对应url.并且给出一个mysql数据库select的简单应用.如下: ...

  8. PLSQL Develop 配置

    plsq 连接oracle数据库的配置步骤: 1.下载oracle客户端: 下载地址:http://www.oracle.com/technetwork/topics/winx64soft-08954 ...

  9. [selenium webdriver Java]显示的等待同步

    显示等待可以在执行下一次操作时,自定义等待条件 显示的等待只需要执行在需要同步的地方而不影响脚本的其他地方 Selenium WebDriver提供了WebDriverWait和ExpectedCon ...

  10. Python 连接mysql

    下面我们使用MySQLdb 实现连接mysql 数据库并进行操作. #!/usr/bin/env python # -*-coding:UTF-8-*- import MySQLdb def conn ...