微软已经在.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。