对SQL Server上的DBF文件执行查询

时间:2012-02-29 13:37:49

标签: sql-server dbf visual-foxpro

正如我在this thread上发布的那样,我需要保持同步SQL Server(不仅是SQL Server,如果你推荐另一台做同样事情的服务器)和VFP DBF用于公司系统的表格。

正如@ alex-k所说,Linked Server不支持INSERTUPDATEDELETE,但我需要CRUD语句来支持系统工作。我已经尝试过@ alex-k的建议但返回错误。

由于计算中的很多东西都有不止一种方式,你对我的情况有什么建议?

感谢。

4 个答案:

答案 0 :(得分:1)

我实际上刚刚在旧机器上安装了SQL2008R2。成功创建了一个链接服务器,并在SQL中直接尝试了更新。遇到同样的错误,它将无法正常工作。所以,我也环顾四周,在“tek-Tips”论坛上发现了一些东西,它打开了一个行集,通过this link来应用更新

尝试时,我收到了下面列出的后续错误。

SQL Server阻止访问组件“Ad Hoc Distributed Queries”的STATEMENT“OpenRowset / OpenDatasource”,因为此组件已作为此服务器的安全配置的一部分关闭。系统管理员可以使用sp_configure启用“Ad Hoc Distributed Queries”。有关启用“Ad Hoc Distributed Queries”的详细信息,请参阅SQL Server联机丛书中的“Surface Area Configuration”。

由于我不想打开有关安全性的功能,即使是仅用于示例目的的机器上,您可能更愿意启用/禁用此功能并尝试使用tek-tips ...

祝你好运。

答案 1 :(得分:0)

今天,DBF文件不受广泛支持。据我所知,Microsoft Access仍支持dBASE DBF文件,该文件应与VFP DBF兼容。

您可以在MS Access中构建某种类型的网关,负责同步VFP和SQL Server数据库。

答案 2 :(得分:0)

我没有使用它们,因为他们的前阿波罗时代(uit sed被称为成功软件或SDE),但这家公司可能有一些有用的东西。您可能会遇到的其他可以读写dbfs的解决方案的问题是它们可能无法使索引文件保持最新(cdx,ndx等)。如果他们没有帮助的驱动程序,您可能不得不求助于创建扩展存储过程来本地调用其接口。希望你不必诉诸于此。

-don

答案 3 :(得分:0)

您是否考虑过构建一个小型Visual FoxPro应用程序来执行此操作。 Visual FoxPro可以读取和写入SQL Server和DBF。我们已经做了很多次。关键是要了解哪些记录已更改,并在两组数据上使用代理主键。

瑞克