windows phone 8.1开发SQlite数据库操作详解

原文出自:http://www.bcmeng.com/windows-phone-sqlite1/

本文小梦将和大家分享WP8.1中SQlite数据库的基本操作:(最后有整个示例的源码)(希望能通过本站广告支持小梦,谢谢!)

  • 建立数据库
  • 增加数据
  • 删除数据
  • 更改数据
  • 查询数据

(注:为了让每个操作都能及时显示在UI上,所以进行了数据绑定.数据绑定会在后面文章专门讲解,先给出数据类Note,代表一个笔记.含有Name 和content  属性.其代码如下:如果不清楚,我会在之后讲解):

namespace SQlite
{
    public class Note : INotifyPropertyChanged
    {
           private int id;
           [AutoIncrement, PrimaryKey]
            public int ID
            {
               get { return id; }
                set
            {
                if (value!=id)
                {
                    id = value;
                    RaisePropertyChanged("ID");

                }
            }
           }
           private string name;
            [MaxLength(30)]
           public string Name
           {
               get { return name; }
               set
               {
                   if (value != name)
                   {
                       name = value;
                       RaisePropertyChanged("Name");

                   }
               }
           }

            private string content;
            [MaxLength(300)]
            public string Content
            {
                get { return content; }
                set
                {
                    if (value != content)
                    {
                        content = value;
                        RaisePropertyChanged("Content");

                    }
                }
            }

            public event PropertyChangedEventHandler PropertyChanged;
            protected void RaisePropertyChanged(string propertyName)
            {
                if (PropertyChanged != null)
                {
                    PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
                }
            }
    }
}

windows phone 8.1开发SQlite-建立数据库

private SQLiteAsyncConnection GetConn()
        {

            return new SQLiteAsyncConnection(ApplicationData.Current.LocalFolder.Path + "\\note.db");

        }

        private  async void createButton_Click(object sender, RoutedEventArgs e)
        {

            SQLiteAsyncConnection conn = GetConn();

             await conn.CreateTableAsync<Note>();

            await new MessageDialog("创建数据库成功!").ShowAsync();
        }

windows phone 8.1开发SQlite-增加数据

SQLiteAsyncConnection conn = GetConn();

            await conn.InsertAsync(new Note { Name = "小梦", Content = "小梦我想你" });
            await conn.InsertAsync(new Note { Name = "小梦", Content = "小梦我爱你" });
            await conn.InsertAsync(new Note { Name = "小梦", Content = "小梦我喜欢你" });
            await conn.InsertAsync(new Note { Name = "小梦", Content = "小梦我恨你" });
            await conn.InsertAsync(new Note { Name = "小梦", Content = "小梦我打你" });

            List<Note> notelist = await conn.Table<Note>().ToListAsync();
            notes = new ObservableCollection<Note>(notelist);
            listBox.ItemsSource = notes;
            await new MessageDialog("增加数据成功!").ShowAsync();

windows phone 8.1开发SQlite-删除数据

SQLiteAsyncConnection conn = GetConn();
            var query =  await conn.Table<Note>().FirstAsync();
            for (int i = 0; i < notes.Count;i++ )
            {
                if (notes[i].ID == query.ID)
                {
                    notes.RemoveAt(i);
                    break;
                }
            }

            await conn.DeleteAsync(query as Object);
            listBox.ItemsSource = notes;
            await new MessageDialog("删除数据成功!").ShowAsync();

windows phone 8.1开发SQlite-修改数据

SQLiteAsyncConnection conn = GetConn();
            for (int i = 0; i < notes.Count; i++)
            {
                if (notes[i].Name=="小梦")
                {
                    notes[i].Content = "小梦我爱你";

                }
            }
            var query = conn.Table<Note>().Where(x => x.Name=="小梦");

            var result = await query.ToListAsync();

            foreach (var item in result)
            {

                item.Content = "小梦我爱你";

                await conn.UpdateAsync(item);
            }

            await new MessageDialog("更新数据成功!").ShowAsync();

windows phone 8.1开发SQlite-查询数据

SQLiteAsyncConnection conn = GetConn();

            var query = conn.Table<Note>();

            var result = await query.ToListAsync();
            notes = new ObservableCollection<Note>(result);
            listBox.ItemsSource = notes;
            await new MessageDialog("查询数据成功!").ShowAsync();

windows phone 8.1开发SQlite数据库操作详解源码下载:

点我下载!

时间: 2024-12-21 04:04:45

windows phone 8.1开发SQlite数据库操作详解的相关文章

Yii 框架里数据库操作详解-[增加、查询、更新、删除的方法 &#39;AR模式&#39;]

public function getMinLimit () {        $sql = "...";        $result = yii::app()->db->createCommand($sql);        $query = $result->queryAll();         return array (                $query [0] ['max'],         );    } $connection=Yii::

Windows Phone 8.1开发SQlite数据库引用安装

第一步: 安装SQlite For Windows Phone 插件: 插件下载地址:http://www.sqlite.org/download.html Windows Phone 8  插件下载后的名称:sqlite-wp80-winrt-3080803.vsix Windows Phone 8.1 插件下载后的名称:sqlite-wp81-winrt-3080803.vsix 进入后下载安装,重启VS2013,然后添加引用,在windows phone 的扩展选项里面会发现SQlite

SQLiteDatabase数据库操作详解

今天花了点时间总结了一下数据的相关知识android中系统自带的数据库SQLiteDatabase数据库,这种数据库操作起来比ormLite数据库(第三方的)麻烦点,但是我对这种数据库操作比较熟悉所以我就采用了这种数据库,如有错误欢迎大家批评指正,谢谢 1.SQLiteDatabase SQLiteDatabase本身是一个数据库的操作类,但是如果想进行数据库的操作,还需要android.database.sqlite.SQLiteOpenHelper类的帮助,在执行SQL语句时execSQL(

JMeter数据库操作详解

Jmeter提供了JDBC连接的插件,通过执行SQL语句的java API,实现对数据库的访问和查询. 一.安装驱动包 将需要连接JDBC的jar包放入jmeter安装文件的lib文件中(也可测试计划中的导入) 二.配置JDBC Connection configuration 右键线程组→添加→配置元件→JDBC Connection configuration Variable Name:数据库连接池的名称,在使用JDBC Request时通过该连接池名称进行连接,因此在使用JDBC Req

django 数据库操作详解

你创建完数据模型,django会自动提供给你数据库抽象的API,可以创建,获取,修改,删除对象.本篇文档讲解如何使用API,包括外键相关查询以及多对多模式的操作等 我们参考下面模型,一个weblog: class Blog(models.Model): name = models.CharField(max_length=100) tagline = models.TextField() def __unicode__(self): return self.name class Author(m

android 数据库操作详解

请看郭大神的八篇专栏,包含sql语句  android封装的databasehelper 和郭大神自己的LitePal  三种使用详解 http://blog.csdn.net/column/details/android-database-pro.html

在安卓开发中使用SQLite数据库操作实例

前段时间写了个安卓平台下SQLite数据库操作的实例 ,一直没得时间总结 ,今天把它弄出来了. 在Android 运行时环境包含了完整的 SQLite. 首先介绍一下SQLite这个数据库: SQLite,是一款轻型的数据库,是遵守ACID的关联式数据库管理系统,它的设计目标是嵌入式的,而且目前已经在很多嵌入式产品中使用了它,它占用资源非常的低,在嵌入式设备中,可能只需要几百K的内存就够了.它能够支持Windows/Linux/Unix等等主流的操作系统,同时能够跟很多程序语言相结合,比如 Tc

Windows Phone8 中如何引用 SQLite 数据库

SQLite数据库介绍 1.SQLite是一款轻型的嵌入式数据库,使用C++开发,使用非常广泛 2.SQLite是一款跨平台的数据库,支持Windows.Linux.Android.IOS.Windows Phone行装系统 3.在Windows Phone中的SQLite是一个非托管组件 4.可以在Windows运行时中使用,也可以在C#项目中使用 5.在C#项目中需要通过Windows运行时组件来访问 下面介绍如何在wp中使用SQLite开发应用程序 1.首先我们来下载数据库工具安装包,地址

安卓 SQLite数据库操作实例

前段时间写了个安卓平台下SQLite数据库操作的实例 ,一直没得时间总结 ,今天把它弄出来了. 在Android 运行时环境包含了完整的 SQLite. 首先介绍一下SQLite这个数据库: SQLite,是一款轻型的数据库,是遵守ACID的关联式数据库管理系统,它的设计目标是嵌入式的,而且目前已经在很多嵌入式产品中使用了它,它占用资源非常的低,在嵌入式设备中,可能只需要几百K的内存就够了.它能够支持Windows/Linux/Unix等等主流的操作系统,同时能够跟很多程序语言相结合,比如 Tc