Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/59.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql ODBC连接成功,但无法在运行时加载表_Mysql_Vba_Ms Access_Odbc_Runtime - Fatal编程技术网

Mysql ODBC连接成功,但无法在运行时加载表

Mysql ODBC连接成功,但无法在运行时加载表,mysql,vba,ms-access,odbc,runtime,Mysql,Vba,Ms Access,Odbc,Runtime,更新:我在VBA中运行了一个SQL连接测试函数,它从我的主工作站读取open,我在客户端工作站上运行了相同的连接脚本,运行时崩溃。我还检查了它是否使用了32位而不是62位的驱动程序,并且凭据是否与另一个正常工作的站点相同。如果我运行连接测试,运行时会崩溃,如果我尝试只运行查询,它会说找不到连接。两次尝试都是从用户计算机进行的 我在系统DSN级别成功地从客户端计算机打开了到MySQL数据库的ODBC Unicode连接。当我打开Access运行时文件并尝试使用表单查询数据库时,收到错误:到“ser

更新:我在VBA中运行了一个SQL连接测试函数,它从我的主工作站读取open,我在客户端工作站上运行了相同的连接脚本,运行时崩溃。我还检查了它是否使用了32位而不是62位的驱动程序,并且凭据是否与另一个正常工作的站点相同。

如果我运行连接测试,运行时会崩溃,如果我尝试只运行查询,它会说找不到连接。两次尝试都是从用户计算机进行的

我在系统DSN级别成功地从客户端计算机打开了到MySQL数据库的ODBC Unicode连接。当我打开Access运行时文件并尝试使用表单查询数据库时,收到错误:到“servername”的ODBC连接失败。我尝试了许多名称,包括更改大小写敏感度。我验证了我使用的TCPIP地址确实是该数据库的主机地址,并且使用ipconfig/all的名称具有适当的大小写敏感性。我还不能确定这是否是Access与Runtime之间的问题,但我看不出这是问题所在。该表的名称是tbl_panel,它肯定位于我使用ODBC连接的数据库中,并且具有确切的名称

我使用的连接的用户需求基本上具有只读权限,但这是它所需要的全部,因为我只检查数据。除非创建记录集超出了选择、显示视图、创建临时表的范围。此外,它找不到服务器本身的事实告诉我,这可能与我的SQL/VBA编码无关。将鼠标悬停在Access导航窗格中的tbl_面板上,显示ODBC;DSN='servername';;表=tbl_面板

以下是用于创建因空格而被截断的记录集的SQL字符串,因为语句本身工作正常:

stSQL1=从tbl_面板和等中选择tbl_面板.PNL_序列号。 设置qryList=dbsInspect.OpenRecordsetstSQL1


这让我很难堪,我是ODBC的新手,所以如果这是显而易见的事情,请友好一点。我确实做了很多搜索,但大多数ODBC查询都会返回数据源的初始设置或在代码中打开连接时出现的问题。这可能是我必须做的事的原因吗?在VBA中包含表的开始语句,以便运行时知道该做什么?如果这就是问题所在,我会觉得自己很傻,而我键入所有这些内容都是白费力气。

这最终成为一个小问题。尽管在控制面板->管理工具中使用了ODBC连接工具。我需要一个32位的连接。这在另一个问题中得到了回答

但是,我会注意到,我最终得到有用错误消息的唯一方法是创建后端。然后在下面的链接问题中显示错误消息:


如果您只想为该表授予用户只读权限,则将记录集作为快照打开dbs.openrecordsetstSQL1,dbopensnapshot为什么不使用通过ODBC连接生成的链接表请参见功能区上的“外部数据”选项卡?链接表后,只需将表单绑定到该表即可。该用户应仅具有只读权限。我认为这不是问题所在。该表已使用该方法在数据库中链接,但当我尝试通过运行时计算机打开它时,它会告诉我找不到服务器。DSN='servername'无法工作。您的问题有点令人困惑,您是否在用户计算机上创建了系统DSN?然后DSN名称而不是服务器名称进入连接字符串。@Andre系统DSN是在用户计算机上设置的。如果有助于消除混淆,DSN的名称与服务器的名称相同。