3

我有一个使用 FileMaker Pro 11 Advanced 的客户。

我需要能够通过 SQL 连接到 filemaker 数据库。我用的是MS SQL Server 2008 R2,或者Server 2012都可以。

这些是我尝试过的步骤

0) 在文件中打开 ODBC/JDBC 共享 -> 在 FileMaker Pro 11 Advanced 上为“所有用户”共享

1) 安装 filemaker 光盘中包含的 FileMaker OBDC 驱动程序

2) C:\Windows\SysWOW64 中的 odbcad32.exe 并添加了一个新的 filemaker System DSN 并将其定向到 filemaker 数据库。

3) 尝试使用 Provider Microsoft OLE DB Provider for OBDC Drivers 和我为数据源创建的系统 DSN 名称将链接服务器添加到 SQL。我将所有其他字段留空。

我收到此错误:

Cannot initialize the data source object of OLE DB provider "MSDASQL" for linked server "FILEMAKER2".
OLE DB provider "MSDASQL" for linked server "FILEMAKER2" returned message "[Microsoft][ODBC Driver Manager] The specified DSN contains an architecture mismatch between the Driver and Application". (Microsoft SQL Server, Error: 7303)

FILEMAKER2 就是我所说的系统 DSN。

我做错了什么/我需要纠正什么才能使用 SQL 连接到 filemaker?

是否有要为 Provider String 输入的连接字符串?

我尝试通过访问进行测试连接时遇到相同的不匹配错误。

感谢您的任何帮助。

4

3 回答 3

3

您收到的错误是因为安装的驱动程序是 32 位驱动程序,适用于 64 位系统。在 FM 的下载中查找正确的 xbit 驱动程序。

于 2012-11-21T19:41:02.947 回答
1

我已经使用 PHP 应用程序中的 ODBC 连接到 FM,以执行基本的数据插入、更新和删除。不过,我并没有像您尝试的那样使用它,而且就像@ted 所说的那样,FM 确实不是作为 SQL 平台构建的。

他们对此的回答是反其道而行之。您可以在 FileMaker 中设置外部 SQL 源,并将您的 SQL 数据库绑定到 FM,以便这些表在 FM 中的显示与常规 FM 表相同。然后可以在 FM 脚本中相应地使用这些表,因此您可以在那里设置任何必要的数据同步步骤。例如,您可以创建脚本以在一天中以给定的时间间隔将数据从 FM 布局移动到 SQL DB 布局。

希望有帮助。

于 2012-11-13T03:11:31.283 回答
1

FileMaker 11 仅附带 32 位 ODBC 驱动程序。当您将 32 位驱动程序与 64 位 ODBC 管理实用程序一起使用时,会发生错误。使用此处的 32 位实用程序设置您的 DSN:

C:\Windows\SysWOW64\odbcad32.exe

...它会正常工作。

于 2014-09-24T03:19:08.900 回答