Sql Server Compact Edition(简称SqlCE)是一个轻量级的数据库,对于放在客户机上的程序而有需要存储数据这样的环境,使用SqlCE再合适不过了。SqlCE可以通过在VS(Visual Studio)中使用SQL Server Compact Toolbox中进行对数据库的操作,包括创建数据库啦,创表什么的…还可以在 Sql Server Management Studio 工具中进行创建。

无论是创建表,还是使用都是非常方便的(微软的东西相对其他公司的东西而言,我感觉一直都很方便…..)

知道了SqlCE的使用场景后,我们再来了解下如果把程序写好了发给客户机上使用还需要安装 Sql Server Compact Edition 这个安装程序吗?非常不错的是 不需要安装,你只需要把相关的dll引用到项目下一起打包过去即可。(跟 sqlite 一样轻便)

如何创建 Sql Server Compact 数据库,创建表

前面我们提到过,可以有两种方式,本文起个抛砖引玉的作用,主要描述如何在 SQL Server Management Studio 中创建数据库。

Q.首先你需要在电脑中安装了 SQL Server Compat 4.0 (推荐4.0版本,你也可以安装3.5….)

A.可以在控制面板中的卸载程序中搜索一下 “Compact” 看看是否安装了,如果没有安装,可以到以下地址中进行下载安装。因为一般来说你完整安装了 Sql Server 就会带着SqlCe,所以这种情况就无需再去下载安装了。

SQL Server Compact 4.0 下载地址http://www.microsoft.com/zh-CN/download/details.aspx?id=17876

Q.使用 SQL Server Management Studio (以下简称sql server)创建 SqlCE 数据库。

A.如图所示打开sql server工具,选择数据库类型。

然后选择新建数据库,如下图所示。

然后选择数据库存放的位置,设置密码什么的,就不一一截图了,跟着操作就创建好了数据库文件。

然后在左边可以有个“表”的文件夹可以鼠标右键新建表,建好表也可以进行编辑,略微跟SQL Server数据库的操作不太一样,毕竟这个数据库是轻量级数据库嘛也没那么多复杂的功能。主要对表的设置如下所示,设置表为空啊,主键啊什么的。

(点击图片查看大图)

如何在VS中使用SQL Server Compact

创建好数据库文件设置好之后,把数据库文件复制到你的项目的Debug中方便测试。

然后在你SqlCE的安装目录中复制 “C:\Program Files (x86)\Microsoft SQL Server Compact Edition\v3.5\Desktop” 目录中的 System.Data.SqlServerCe.dll 文件到项目中进行引用即可(根据你的情况选择4.0还是3.5,注意看下目录)。

这样就可以正常运行你的程序了,如下所示的代码进行调试:

static void Main(string[] args)
{
System.Data.SqlServerCe.SqlCeConnection conn = new System.Data.SqlServerCe.SqlCeConnection("Data Source=MyDatabase#1.sdf;Persist Security Info=False;Password=wxzzz;");
conn.Open();
}

如果能正常Open(); ,那么恭喜你一切顺利

当然,以上是顺利的情况,如果你跟我同样遇到了以下问题,那么是我的一些解决办法仅供参考

首先建议你使用 SQL Server Management Studio 2012 这个版本来创建SQLCE数据库,因为这样才是4.0的版本,我使用2008的版本创建出来是3.5的,所以只能使用SQLCE 3.5的引用。

还有个创建4.0数据库的办法就是使用VS中的插件,可以在VS中搜索一下 SQL Server Compact 即可找到。

另外我还遇到了个奇怪的现象,还没解决..就是这个玩意儿在我的机器上只能运行 .NET Framework 4.5 以上的版本,其他的版本都会异常……

如何部署 SQL Server Compact

需要拷贝以下dll到程序的目录即可:

C:\Program Files\Microsoft SQL Server Compact Edition\v4.0\Desktop\System.Data.SqlServerCe.dll

C:\Program Files\Microsoft SQL Server Compact Edition\v4.0\Desktop\System.Data.SqlServerCe.Entity\System.Data.SqlServerCe.Entity.dll ( 3.5版本的,不需要复制该文件)

C:\Program Files\Microsoft SQL Server Compact Edition\v4.0\Private\x86 下所有文件

(注意,如果你使用的是3.5的版本,那么就拷贝3.5目录下的文件)

C# 如何使用 Sql Server Compact 数据库的更多相关文章

  1. 让PDF.NET支持不同版本的SQL Server Compact数据库

    最近项目中需要用到嵌入式数据库,我们选用的数据开发框架是PDF.NET(http://www.pwmis.com/SqlMap/),之前的博文已经总结了让PDF.NET支持最新的SQLite,今天我们 ...

  2. 微软ASP.NET网站部署指南(2):部署SQL Server Compact数据库

    1. 综述 对于数据库訪问,Contoso University程序要求以下的软件必须随程序一起部署.由于不属于.NET Framework: SQL Server Compact (数据库引擎) A ...

  3. SQL Server Compact 3.5环境部署<转>

    通过使用 Microsoft Visual Studio 开发环境,可以开发使用 SQL Server Compact 3.5 的应用程序.Visual Studio 是开发和部署使用 SQL Ser ...

  4. Sql Server Compact 4.0数据库部署安装

    Sql Server Compact 4.0相比3.5版本增强了很多,支持Entity Framework 4.1,对于轻量级应用来讲,使用Sql Server Compact 4.0是个很好的选择, ...

  5. VS2010 使用 EntityFramework For SQL Server Compact 4.0

    1.安装 SSCERuntime_x64-ENU.exe 或 SSCERuntime_x86-ENU.exe 2.安装 SSCEVSTools-CHS.msi 3.然后就可以通过 SQL Server ...

  6. Microsoft SQL Server Compact 4.0&&ADO.NET Entity Framework 4.1&&MVC3

    最近重新查看微软MvcMusicStore-v3.0的源代码,发现忽略了很多重要的东西,特别是数据访问那一部分. 首先Microsoft SQL Server Compact 4.0 详细的介绍和下载 ...

  7. SQL Server 2008数据库同步配置

    以下内容转载于网络,个人做了简单的修改.          数据库同步可以是同一个服务器之间不同数据库之间数据同步,也可以是局域网内不同服务器间数据库的同步. 下面具体说一下步骤,首先我们说一下发布服 ...

  8. SQL Server Compact/SQLite Toolbox 使用

    最近一个嵌入式的数据库用的SqlCe 需要导入到Sqlite, 网上查到了这个工具--SQL Server Compact/SQLite Toolbox.但是在使用的时候遇到了一点小曲折,记录下来给需 ...

  9. XamarinSQLite教程下载安装SQLite/SQL Server Compact Toolbox

    XamarinSQLite教程下载安装SQLite/SQL Server Compact Toolbox SQLite/SQL Server Compact Toolbox是一个Visual Stud ...

随机推荐

  1. Framework for Graphics Animation and Compositing Operations

    FIELD OF THE DISCLOSURE The subject matter of the present disclosure relates to a framework for hand ...

  2. 【LCA最近公共祖先】在线离线

    [在线] 1.倍增法 现将深度较大的跳至与深度较小的统一深度.预处理$fa[u][i]$表示$u$往上跳$2^i$个单位后的祖先,则就可以像快速幂一样,将移动的步数化为二进制,如果第$i$位为$1$, ...

  3. Docker上定制CentOS7镜像

    原文:Docker上定制CentOS7镜像 前言: 环境:centos7.5 64 位 正文: 第一步:下载centos7镜像 docker pull centos 第二步:建立centos7的容器 ...

  4. 左右Cwnd::Create()功能出现afxwin1.inl line:21错误的解决方案

    我最近在调试dll时刻,有一种模糊的断言错误,它是由主程序创建MFC 扩张DLL控制出口(从控制继承CWnd分类)时刻,呼叫Create()下列说法错误的功能: watermark/2/text/aH ...

  5. 从vue1迁移到vue2踩到的两个坑

    先说第一个,在vue1中用v-for的时候,习惯性用$index和$key来取键.今天迁移到vue2之前,也知道vue2里不能这样用了,结果还是出问题了, 数据渲染不出来. <li v-for= ...

  6. android studio 各种问题 应该能帮助到你们

    1. you can import your settings from a previous version of Studio 可以导入您的设置从先前版本的工作室 2. I want to imp ...

  7. Hibernate——(6)延迟加载机制

    一.延迟加载机制的基本原理 当访问实体对象时,并不是立即到数据库中查找.而是在真正要使用实体对象的时候,才去数据库查询数据. 具备这样功能的方法 session.load(...) query.ite ...

  8. JavaScript window.location物

    演示样例 注意 方法 常常使用window.location.它的结构总是记不住.简单梳理下.方便以后查询. 演示样例 URL:http://b.a.com:88/index.php? name=ka ...

  9. node 设置自动启用定时任务控件 node-schedule

    [转]Quartz中时间表达式的设置-----corn表达式 时间格式: <!-- s m h d m w(?) y(?) -->,   分别对应: 秒>分>小时>日&g ...

  10. hadoop编程技巧(6)---处理大量的小型数据文件CombineFileInputFormat申请书

    代码测试环境:Hadoop2.4 应用场景:当需要处理非常多的小数据文件,这种技术的目的,可以被应用到实现高效的数据处理. 原理:申请书CombineFileInputFormat,能够进行切片合并的 ...