一只大菜鸟,最近要学习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. .NET C# Tostring format 格式化字符串

    一.数值型 formatCode 是可选的格式化代码字符串.必须用“{”和“}”将格式与其他字符分开.如果恰好在格式中也要使用大括号,可以用连续的两个大括号表示一个大括号,即: “{{”或者“}}”. ...

  2. springboot创建一个可执行的jar

    让我们通过创建一个完全自包含的可执行jar文件来结束我们的示例,该jar文件可以在生产环境运行.可执行jars(有时候被成为胖jars "fat jars")是包含你的编译后的类和 ...

  3. java多线程计算和

    如题:如何利用多线程实现1~1000000000的和 本文利用Callable可以返回值的特性,并将执行结果用CompletionService进行存储,最后将分步值累加. import java.u ...

  4. ftp配置文件

    vsftpd配置文件采用“#”作为注释符,以“#”开头的行和空白行在解析时将被忽略,其余的行被视为配置命令行,每个配置命令的“=”两边不要留有空格.对于每个配置命令,在配置文件中还列出了相关的配置说明 ...

  5. C# wpf 阻止*和|的输入

    private void texBox_KeyDown(object sender, KeyEventArgs e) { if (Keyboard.Modifiers == ModifierKeys. ...

  6. Java中关于HashMap源码的研究

    1.基础知识 1.数组 数组存储区间是连续的,占用内存严重,故空间复杂的很大.但数组的二分查找时间复杂度小,为O(1):数组的特点是:寻址容易,插入和删除困难. 2.链表 链表存储区间离散,占用内存比 ...

  7. 【LOJ】#2508. 「AHOI / HNOI2018」游戏

    题解 把没有门的点缩成一个点 如果\(i->i + 1\)的钥匙大于\(i\),那么\(i\)不可以到\(i + 1\),连一条\(i\)到\(i + 1\)的边 如果\(i->i + 1 ...

  8. 【LOJ】#2081. 「JSOI2016」反质数序列

    题解 我居然都没反应过来二分图内选集合两两不能有边是最大独立集了 我退役吧 显然连边只能在奇数和偶数之间,然后二分图求最大独立集是节点数-最大匹配数 啊当然还有对于1的话只能留一个1 代码 #incl ...

  9. 【Java】 大话数据结构(7) 循环队列和链队列

    本文根据<大话数据结构>一书,实现了Java版的循环队列.链队列. 队列:只允许在一端进行插入操作,而在另一端进行删除操作的线性表. 1.循环队列 队列的顺序储存结构:用数组存储队列,引入 ...

  10. 024 关于spark中日志分析案例

    1.四个需求 需求一:求contentsize的平均值.最小值.最大值 需求二:请各个不同返回值的出现的数据 ===> wordCount程序 需求三:获取访问次数超过N次的IP地址 需求四:获 ...