一只大菜鸟,最近要学习windows phone数据库相关的知识,找到了一些比较简短的教程进行学习,由于是英文的,顺便给翻译了。本身英语水平就不好,估计文中有不少错误,如果有不幸读到的童鞋请保持对翻译质量的质疑,多多指教。

这是原文地址:http://windowsphonegeek.com/tips/Windows-Phone-Mango-Local-Database%28SQL-CE%29-Introduction

正文如下:

我开始了一个新的系列——Windows Phone Mango本地数据库(SQLCE)。为了让你开始在Windows Phone Mango中使用数据库,这一系列短篇文章将覆盖所有你需要知道的知识点。这个系列包含以下内容:

    Windows Phone Mango Local Database(SQL CE): Introduction

这是这个系列中的第一篇文章,我将给出一个简短的关于本地数据库的介绍,除此之外还有在Windows Phone Mango的应用程序中开始使用SQLCE数据库之前,你需要知道的内容。

1、什么是本地数据库?

首先,第一次说到windows phone mango,你现在可以在IsolatedStorage中保存关系数据到本地数据库。在windows phone中,所有应用程序都是相互“隔离”的,这意味着一个程序只能访问它自己的IsolatedStorage,即一个数据库只能应用于一个应用程序,并不能在几个应用程序中共享。

windows phone中的本地数据库是SQL Compact关于mango的一个实现。这是内存/嵌入式上的关系数据库管理系统(RDB MS)。本地数据库非常适用于有关系实体(related entities)的场景。例如:客户和订单。

下面的场景非常适合使用本地数据库:
1、较多的关系表/实体,包含含有适量的记录(不大不小)
2、少数包含大量的记录或数据的表格
3、本地缓存的数据来自云计算
 
一个本地数据库有以下优点:
1、在数据库中使用复杂查询变得更加高效和快捷的能力
2、允许数据在特定的时刻加载到内存中(这句话实在不懂得怎么翻译才好)
3、可以做一些操作,比如:添加,移除,插入,删除,所有的这些操作都是通过SQL Compact runtime进行高效地处理
 
为了在windows phone中使用本地数据库,你需要注意下面步骤
1、实现所有数据库类:tables(表),columns(列),relations(关系),datacontext等
2、在IsolatedStorage中建一个新的数据库(.sdf)文件(默认情况下,数据库是空的)
3、在IsolatedStorage中使用数据填充这个数据库
 

在开始之前,你需要知道的关于SQL CE的8件事情
1、LINQ TO SQL 被用作ORM引擎
2、数据库文件存储在IsolatedStorage
3、LINQ常用作于查询数据,不支持T-SQL
4、不需要分配程序集以致增加应用程序的大小,对WindwosPhoneMango本地数据库的支持是Framework的一部分。
5、System.Data.Linq这一个程序集必须添加到项目中
6、使用一个特殊格式的连接字符串,比如这个例子:
"Data Source='isostore:/DIRECTORY/FILE.sdf'";
7、windows phone mango这个版本使用代码优先的方法来定义数据库模式是首选的,即此时没有视觉设计器来帮助开发者映射和配置他们用来处理数据库的类(所以你必须自己写下所有的类)。不过你可以使用一些工具,比如:使用SQLMetal来生成windows phone mango本地数据库的类,http://windowsphonegeek.com/articles/Using-SqlMetal-to-generate-Windows-Phone-Mango-Local-Database-classes
 
8、最小要求:Visual Studio 2010 SP1 and Windows Phone 7.1 Mango Developer Tools
 
 
这就是“windows phone mango本地数据库(sqlce)”系列文章的简短介绍。请继续关注接下去的文章。

Windows Phone本地数据库(SQLCE):1、介绍(翻译)(转)的更多相关文章

  1. Windows Phone本地数据库(SQLCE):11、使用LINQ查询数据库(翻译) (转)

    这是“windows phone mango本地数据库(sqlce)”系列短片文章的第十一篇. 为了让你开始在Windows Phone Mango中使用数据库,这一系列短片文章将覆盖所有你需要知道的 ...

  2. Windows Phone本地数据库(SQLCE):4、[Column]attribute(翻译) (转)

    这是“windows phone mango本地数据库(sqlce)”系列短片文章的第四篇. 为了让你开始在Windows Phone Mango中使用数据库,这一系列短片文章将覆盖所有你需要知道的知 ...

  3. Windows Phone本地数据库(SQLCE):2、LINQ to SQL(翻译)(转)

    首先.要说到的是,windows phone 7.1上基本的数据库功能是SQL Compact关于Mango的一个实现,使用linq to sql访问存储在数据库上的数据.   1.LINQ to S ...

  4. Windows Phone本地数据库(SQLCE):14、删除数据(翻译)

    这是“windows phone mango本地数据库(sqlce)”系列短片文章的最后一篇第十四篇. 为了让你开始在Windows Phone Mango中使用数据库,这一系列短片文章将覆盖所有你需 ...

  5. Windows Phone本地数据库(SQLCE):13、更新数据(翻译)

    这是“windows phone mango本地数据库(sqlce)”系列短片文章的第十三篇. 为了让你开始在Windows Phone Mango中使用数据库,这一系列短片文章将覆盖所有你需要知道的 ...

  6. Windows Phone本地数据库(SQLCE):12、插入数据(翻译)

    这是“windows phone mango本地数据库(sqlce)”系列短片文章的第十二篇. 为了让你开始在Windows Phone Mango中使用数据库,这一系列短片文章将覆盖所有你需要知道的 ...

  7. Windows Phone本地数据库(SQLCE):10、创建数据库(翻译) (转)

    这是“windows phone mango本地数据库(sqlce)”系列短片文章的第十篇. 为了让你开始在Windows Phone Mango中使用数据库,这一系列短片文章将覆盖所有你需要知道的知 ...

  8. Windows Phone本地数据库(SQLCE):9、Connection Strings(翻译) (转)

    这是“windows phone mango本地数据库(sqlce)”系列短片文章的第八篇. 为了让你开始在Windows Phone Mango中使用数据库,这一系列短片文章将覆盖所有你需要知道的知 ...

  9. Windows Phone本地数据库(SQLCE):8、DataContext(翻译)

    这是“windows phone mango本地数据库(sqlce)”系列短片文章的第八篇. 为了让你开始在Windows Phone Mango中使用数据库,这一系列短片文章将覆盖所有你需要知道的知 ...

随机推荐

  1. 规则 防火墙 iptables input accept【转】

    由于 mangle 这个表格很少被使用,如果将图 9.3-3 的 mangle 拿掉的话,那就容易看的多了: 图 9.3-4.iptables 内建各表格与链的相关性(简图) 透过图 9.3-4 你就 ...

  2. 【并行计算】用MPI进行分布式内存编程(一)

    通过上一篇关于并行计算准备部分的介绍,我们知道MPI(Message-Passing-Interface 消息传递接口)实现并行是进程级别的,通过通信在进程之间进行消息传递.MPI并不是一种新的开发语 ...

  3. spring-service.xml 模板

    ssm模板 <?xml version="1.0" encoding="UTF-8"?>  <beans xmlns="http:/ ...

  4. CSS之:active选择器

    Active的一段话 active的英文解释为“积极的”,表现在鼠标上就是点击的意思.关于active选择器最多的示例恐怕就是应用在链接上面的,然而打开链接是一个一瞬间的动作,这不能很好的体现acti ...

  5. 使用nginx统一代理dashboard,grafana,Prometheus二级目录访问

    k8s上的这些管理工具必不可少,可以统一在nginx下的二级目录下. ingress是好,但我们不方便使用内部域名,相信么...:) 一,prometheus改造 在prometheus的deploy ...

  6. 【LOJ】#2078. 「JSOI2016」无界单词

    题解 用所有的方案减去有界的方案 我们规定两个前缀后缀相同时长度最短的,设长度为l,因为长度最短所以他们也是无界单词,可以递推 \(f[i] = \sum_{j = 1}^{\lfloor \frac ...

  7. 2018年湘潭大学程序设计竞赛 F - maze

    把点抽出来 跑个最短路就好啦. #include<bits/stdc++.h> #define LL long long #define pii pair<int,int> # ...

  8. streaming优化:spark.default.parallelism调整处理并行度

    官方是这么说的: Cluster resources can be under-utilized if the number of parallel tasks used in any stage o ...

  9. Python PyCharm编译器

    PyCharm编译器有很强大的代码提示功能,业界都说很好用,所以我尝试着安装并使用,以下是过程. 下载地址:http://www.jetbrains.com/pycharm/download/#sec ...

  10. 20172301 《Java软件结构与数据结构》实验二报告

    20172301 <Java软件结构与数据结构>实验二报告 课程:<Java软件结构与数据结构> 班级: 1723 姓名: 郭恺 学号:20172301 实验教师:王志强老师 ...