【发布时间】:2013-07-16 06:33:14
【问题描述】:
我正在尝试将一些数据从 SQL 数据库直接导入 R。我已经毫无问题地建立了连接,但提取数据有些困难。我会尝试尽可能清楚地说明这一点,因为由于某些敏感信息,我认为我无法使其可重现。当我运行以下行时,我得到了我想要的数据:
myconn <- odbcConnect("COMPANYNAME", uid = "support", pwd = "password111?")
sqlQuery(myconn, "SELECT * FROM Metrics")
但是,当我包含要从服务器中提取的特定数据库时,我遇到了问题:
sqlQuery(myconn, "USE companyname_clientname SELECT * FROM Metrics")
其中 companyname_clientname 是数据库。我得到的不是我想要的数据,而是
character(0)
我知道引入“USE companyname_clientname”是个问题,我只是不知道为什么或如何解决它。如果有任何事情可以让您更轻松地帮助我,请告诉我,我会提供帮助。
【问题讨论】:
-
ODBC 连接将仅支持一种“最小公分母”SQL 语法。我对 sql server 不是很熟悉;
FROM companyname_clientname.Metrics会等价吗? -
不幸的是,它不等效。您所说的“最小公分母”SQL 语法是什么意思?
-
我的意思是 ODBC 旨在与几乎每个 SQL 数据库一起工作,因此特定数据库的许多语言扩展将不起作用。除了普通的选择、插入、更新和删除之外,我不会指望任何东西。
-
如果有什么能起作用,我猜它会更改您在
odbcConnect中连接的数据库的名称,但这只是猜测。 -
是的,我会尝试通过
odbcConnect
标签: sql-server r rodbc