我在Windows Server 2012上运行AWS每小时ColdFusion 11实例。它已被锁定。
我试图通过cfquery(DSN)访问.MDB文件。
我已按照http://blogs.coldfusion.com/post.cfm/coldfusion-10-64bit-and-msaccess上的说明操作,http://www.coldfusionmuse.com/index.cfm/2010/12/31/Access.on.64bit.ColdFusion提供了几乎相同的答案。
此外,我还拥有对ColdFusion Windows用户的HKEY_LOCAL_MACHINE / SOFTWARE / ODBC完全权限。
Per Anit的建议我安装了32位AccessDatabaseEngine。我删除了ODBC工具和CF管理员中的所有数据源并重新添加了它们。我还将服务登录从锁定用户更改为本地服务以获得完整权限。我甚至重新启动了整个服务器。
但是我得到了[#media; [Macromedia] [SequeLink JDBC Driver] [SequeLink Server]未定义指定的数据源"跑步时:
<cfquery name="CJT" datasource="membersAdministration">
SELECT *
FROM MSysObjects
</cfquery>
我在CF Admin中添加了Microsoft Access数据源,为其提供了名称和数据库文件。按预期收到的结果是:&#34;无法更新NT注册表。变量DRIVERPATH未定义。&#34;
然后我跑了&#34; C:\ Windows \ SYSWOW64 \ odbcad32.exe&#34;并以相同的名称和路径添加了系统DSN。
我甚至尝试重启CF。
我看到HKEY_LOCAL_MACHINE / SOFTWARE / ODBC和HKEY_LOCAL_MACHINE / SOFTWARE / Wow6432Node / ODBC都有新条目。
我可能缺少什么想法?
这是堆栈跟踪:
java.sql.SQLException: [Macromedia][SequeLink JDBC Driver][SequeLink Server]The specified data source is not defined.
at macromedia.sequelink.ssp.Diagnostic.toSQLException(Unknown Source)
at macromedia.sequelink.ssp.Chain.cnvDiagnostics(Unknown Source)
at macromedia.sequelink.ssp.Chain.decodeDiagnostic(Unknown Source)
at macromedia.sequelink.ssp.Chain.decodeBody(Unknown Source)
at macromedia.sequelink.ssp.Chain.decode(Unknown Source)
at macromedia.sequelink.ssp.Chain.send(Unknown Source)
at macromedia.sequelink.ctxt.conn.ConnectionContext.connect(Unknown Source)
at macromedia.jdbc.sequelink.SequeLinkImplConnection.open(Unknown Source)
at macromedia.jdbc.slbase.BaseConnection.connect(Unknown Source)
at macromedia.jdbc.slbase.BaseConnection.setupImplConnection(Unknown Source)
at macromedia.jdbc.slbase.BaseConnection.open(Unknown Source)
at macromedia.jdbc.slbase.BaseDriver.connect(Unknown Source)
at macromedia.jdbc.MacromediaDriver.connect(Unknown Source)
at coldfusion.server.j2ee.sql.pool.JDBCPool.createPhysicalConnection(JDBCPool.java:614)
at coldfusion.server.j2ee.sql.pool.ConnectionRunner$RunnableConnection.run(ConnectionRunner.java:67)
at java.lang.Thread.run(Thread.java:745)
答案 0 :(得分:0)
我知道这是一个旧帖子。但我需要连接一些较旧的数据库。 Windows 2016 服务器上的 ColdFusion 2016。它不会连接到 Access 数据库。
所以我更新了一切,服务器更新,ColdFusion 更新。
然后我安装了 MS Office 2016 (Access),然后再次更新了所有内容。
那奏效了。