将SQL Compact Edition数据库保存在同一网络中的另一台计算机上所面临的问题

时间:2013-06-06 06:32:13

标签: wpf sql-server-ce sql-server-ce-3.5

我正在使用SQL CE 3.5作为我的项目之一,前端是WPF应用程序,它处理给定文件并将数据转储到SQL CE数据库。

目前应用程序和数据库在同一台机器上。

客户希望他能够从网络上的任何计算机运行应用程序,但数据库应保留在服务器的共享位置。

用户将在应用程序中选择SDF文件的路径,然后在处理任何文件时,应用程序会将数据转储到数据库。

我的问题是,如果将SDF文件保存在网络共享位置并从任何计算机访问它,那么它能正常工作还是会出问题?

1 个答案:

答案 0 :(得分:1)

实际上,这是不可能的 - SQL CE不支持网络托管操作:与sdf文件(临时数据)相关的所有内容都记录到本地计算机,而不是网络源,因此服务器无法正确处理请求

您可以使用像数据存储一样的SQL Express Server,对于本地客户端,您唯一需要的是Microsoft同步库2.1(它也适用于SQL CE 4.0 SP1)

总结一下,创建SQL CE数据库,用表填充它们,索引它们,然后将它移植到SQL Server express,将同步模块添加到你的应用程序(在一个单独的线程ofc中),就是这样。

另一种解决方案是使用MS Access DB,它允许这样的混乱,但它非常慢,更不用说无法同时写入数据库了。