我正在使用Windows 10 64位。 我下载了一个MySQL 64位ODBC驱动程序并通过管理工具进行设置 - > ODBC驱动程序。我把MySQL数据库的IP地址,id和密码,然后点击"测试"这证实了连接正常。 我在R
中运行了以下代码library("RODBC")
ch <- odbcConnect("xyz")
sqlTables(ch)
这给了我一个结果
[1] TABLE_CAT TABLE_SCHEM TABLE_NAME TABLE_TYPE REMARKS
<0 rows> (or 0-length row.names)
DBA向我发送了一个网络链接(phpMyAdmin),我使用相同的ID和密码登录。在那里,我可以浏览并看到有2个数据库 - x和y,我需要访问y数据库中的表z。有人能告诉我我做错了什么或为什么sqlTables返回0行?
如果我尝试运行sqlFetch(ch,"z")
,则说:
Error in odbcTableExists(channel, sqtable) :
‘z’: table not found on channel
如果我浏览phpMyAdmin链接,我可以看到z存在... 我是数据库管理和R的新手,所以任何帮助都将受到高度赞赏!
答案 0 :(得分:0)
我找到了答案! 当我们必须在Windows中设置ODBC连接时,我需要在管理工具中选择数据库 - &gt; MySQL ODBC Connector选项(以及id和密码)。 所以选择数据库 - &gt; 'y'然后允许我的SQLFetch工作。
我希望这可以帮助那些陷入类似问题的人。