InfoQ

InfoQ

新闻

我的书签

登录注册 以永久保存书签。

该内容已经被标记书签!

标记书签错误,请重试!

.NET Framework 4现已支持LocalDB

作者 Abel Avram 译者 侯伯薇 发布于 2011年11月5日

领域
语言 & 开发
主题
.NET框架 ,
SQL Server ,
数据访问 ,
关系型数据库 ,
微软 ,
.NET ,
编程 ,
数据库

微软已经在.NET Framework 4中添加了对LocalDB的支持。LocalDB是SQL Server Denali的免费开发者版本,它的目的是要提供大部分服务器API,而不增加管理上的工作。

微软已经发布了.NET运行时的更新Update 4.0.2,其中包含了大量与SQL Server的连接性相关的改进,像AlwaysOn特性以及在SQLClient中对LocalDB的支持。现在开发者可以从Visual Studio中访问LocalDB实例,这有助于他们使用简单而且易于维护的SQL数据来开发和测试程序。

微软已经提供了SQL Server快捷版,那是一个免费且功能有限的数据库版本,我们可以使用它来测试服务器和应用程序。但是SQL快捷版还是需要安装和管理。 另外,想要保持它与其他版本SQL Server一致,就意味着会让它越来越庞大,这就使得只拥有一台笔记本的小型开发环境很难工作。因此微软决定在SQL Server 2012(开发代码Denali)中引入一种新的、专门的版本,暂时叫做LocalDB

想要访问LocalDB,开发者需要提供连接字符串“Data Source=(localdb)\v11.0;Integrated Security=true”,这样数据提供程序就会启动一个LocalDB实例作为子进程,并与之连接。LocalDB也支持在连接过程中附加数据库文件,这让开发者可以直接访问数据库文件,而不需要连接数据库服务器。其它的特性还包括:

  • LocalDB的执行文件是sqlservr.exe,这与SQL Express以及其它版本一致
  • 客户端使用相同的T-SQL来与LocalDB连接。
  • 应用程序使用同样的提供程序与LocalDB连接
  • LocalDB不会创建任何数据库服务
  • LocalDB进程会自动启动和关闭。

尽管LocalDB在简单性和易用性方面与SQL Server Compact类似,但还有些区别: SQL Compact是作为进程内的DLL运行,而LocalDB则是在单独的进程中运行;SQL Compact只提供了有限的RDBMS功能,而LocalDB的功能更加丰富,包括存储过程、几何和地理的数据类型等等;SQL Compact只能有很少的内存跟踪记录,它的二进制数据最大为4MB,而LocalDB的二进制数据最大可以140MB。

LocalDB并不是要取代SQL快捷版,而是要让开发者能够花费最少的精力来开发应用程序。微软会继续为用户提供免费的SQL Server快捷版,他们可以在上面运行小型的评估项目,数据库大小的限制为10GB。

查看英文原文:.NET Framework 4 Now Supports LocalDB

译者 侯伯薇 是InfoQ中文站架构社区编辑,有多年对日和国内项目开发经验,目前关注企业中技术与实际业务之间的融合和协作。

回复 发表人 zhimin zhang 发表于
Re: 回复 发表人 桂 利攀 发表于
  1. 返回顶部

    回复

    发表人 zhimin zhang

    这个所谓的 localdb 还是要安装的吧, 期待加入一个类似于 java 的内存数据库。

  2. 返回顶部

    Re: 回复

    发表人 桂 利攀

    一直都希望.NET有类似rails的内存测试数据库来方便做单元测试