星空网 > 软件开发 > ASP.net

RT/Metro商店应用如何调用SQLite数据库

RT/Metro商店应用如何调用SQLite数据库

使用前,要安装:SQLite for Windows Runtime (Windows 8.1)(一个VS插件)、还有Visual C++ Runtime Package(如:Microsoft Visual C++ 2013 Runtime Package for Windows),
同时,项目生成要修改为X86或者X64,总之不能使有和AnyCPU。我这里使用的是X86.
 
 private async void Create()    {      //数据文件保存的位置      var dbPath = Path.Combine(Windows.Storage.ApplicationData.Current.LocalFolder.Path, "db1.sqlite");      //打开创建数据库和表      using (var db = new SQLite.SQLiteConnection(dbPath))      {        //创建表        var result = db.CreateTable<Model.Person>();        await new MessageDialog("返回值:" + result).ShowAsync();      }    }    private async void Insert()    {      //连接数据库      var dbPath = Path.Combine(Windows.Storage.ApplicationData.Current.LocalFolder.Path, "db1.sqlite");      using (var db = new SQLite.SQLiteConnection(dbPath))      {        //插入操作。首先声明一个集合        ObservableCollection<Person> Collection = new ObservableCollection<Person>();        //单条插入语句        db.Insert(new Person() { FirstName = "宋兴柱1", LastName = "Sindrol" });        Collection.Add(new Person() { FirstName = "宋兴柱2", LastName = "Sindrol1" });        Collection.Add(new Person() { FirstName = "宋兴柱3", LastName = "Sindrol2" });        //多条插入集合        var result = db.InsertAll(Collection);        await new MessageDialog("返回值:" + result).ShowAsync();      }    }    private async void Update()    {      //更新语句      var dbPath = Path.Combine(Windows.Storage.ApplicationData.Current.LocalFolder.Path, "db1.sqlite");      using (var db = new SQLite.SQLiteConnection(dbPath))      {        SQLiteCommand cmd = db.CreateCommand("update person set FirstName='lisa' where LastName='Sindrol'");        var result = cmd.ExecuteNonQuery();        await new MessageDialog("返回值:" + result).ShowAsync();      }    }    private async void Delete()    {      var dbPath = Path.Combine(Windows.Storage.ApplicationData.Current.LocalFolder.Path, "db1.sqlite");      using (var db = new SQLite.SQLiteConnection(dbPath))      {        //单行删除操作        db.Delete<Person>(1);        //多行删除        var result = db.DeleteAll<Person>();        await new MessageDialog("返回值:" + result).ShowAsync();      }    }    private async void Select()    {      var dbPath = Path.Combine(Windows.Storage.ApplicationData.Current.LocalFolder.Path, "db1.sqlite");      using (var db = new SQLite.SQLiteConnection(dbPath))      {        //查询所有数据绑定到UI        List<object> list = db.Query(new TableMapping(typeof(Person)), "select * from Person");        gridView.ItemsSource = list;      }    }

Person类如下图所示:

 class Person  {    [SQLite.AutoIncrement, SQLite.PrimaryKey]    public int ID { get; set; }    public string FirstName { get; set; }    public string LastName { get; set; }  }

数据库效果图:

RT/Metro商店应用如何调用SQLite数据库

 




原标题:RT/Metro商店应用如何调用SQLite数据库

关键词:sql

sql
*特别声明:以上内容来自于网络收集,著作权属原作者所有,如有侵权,请联系我们: admin#shaoqun.com (#换成@)。
相关文章
我的浏览记录
最新相关资讯
海外公司注册 | 跨境电商服务平台 | 深圳旅行社 | 东南亚物流