我正在考虑将新的SQL Server Express LocalDB(我认为它的代码名为"Denali")用于桌面应用程序.

它目前使用SQL Compact运行,但用户希望在网络上的多台PC之间共享数据库.不幸的是,这不是SQL Compact可以做到的,所以我正在研究其他解决方案.

客户端需要能够轻松地将数据库文件发送到其他站点或将其备份到闪存盘,因此我避免使用SQL Express,因为备份和恢复需要相当多的"管理员"知识.

所以,我的问题是,新的SQL Express LocalDB是否支持通过网络和/或通过包含mdf文件的共享网络文件夹远程连接到数据库?

LocalDB支持在连接字符串(AttachDbFileName)中为附加的本地DB提供路径,因此使用共享网络文件夹选项.

NOTE:此问题与"LocalDB"新版本的SQL Express"Denali"有关,与SQL Server Express 2008或更早版本无关. 请参阅此处宣布LocalDB发布的文章:http://blogs.msdn.com/b/sqlexpress/archive/2011/07/12/introducing-localdb-a-better-sql-express.aspx

推荐答案

不接受,SQL Server Express LocalDB不接受远程连接.

使用共享网络文件夹的 idea 可能会奏效,但前提是您能够确保在try 复制文件之前关闭LocalDB实例.还要记住,只有一个LocalDB实例可以同时打开任何给定的数据库文件.别忘了日志(log)文件!

附加安全警告:与SQL Server Compact数据库不同,SQL Server Express数据库(包括LocalDB数据库)未设计为安全的数据交换格式.例如,它们可能包含恶意代码.NET程序集嵌入其中.因此,永远不要从不受信任的源打开数据库.

也许为客户提供一个自动执行备份过程的简单工具会是个更好的主意?

Database相关问答推荐

函数到关系映射比对象到关系更容易吗?

关闭连接会自动关闭语句和结果集吗?

JOIN 三张表

无法使用命令行运行 liquibase

数据库中空值(nulls)使用的空间

某些网站不允许在密码中使用句点是否有原因?

如何更改 SQLite 数据库列中的值?

NameError:设置更改为 mysql 后未定义名称_mysql

B+ 树相对于 BST 的优势?

xtradb vs innodb

来自外部源的 Django 用户和身份验证

MySQL 转储所有数据库并在导入时创建(或重新创建)它们?

如何产生幻读?

单父实体的核心数据性能

执行语句还是运行脚本?

如何从 Django 中的 sql 模式生成数据模型?

有什么理由不应该在生产中使用 h2 数据库?

将用户数据存储在 LDAP 而不是 RDBMS 中的原因

用于存储文件夹系统的数据库模式的 Select

从 SQLite 导出到 SQL Server