RODBC:能够连接到db但无法找到表对象

时间:2014-11-28 14:13:51

标签: r sqlite rodbc

我正在尝试使用SQLite中的RODBC连接RODBC数据库sqlTables能够连接到数据库,但无法使用{{{}获取数据库中的表列表1}},返回"0 rows"。该数据库有20个表。

系统:R 3.1.2,Windows 7,Rstudio

代码段

> library(RODBC)
> odbcGetInfo(bbdb1)
                                                          DBMS_Name 
                                                           "SQLite" 
                                                           DBMS_Ver 
                                                            "3.8.6" 
                                                    Driver_ODBC_Ver 
                                                            "03.00" 
                                                   Data_Source_Name 
                                                            "bbdb1" 
                                                        Driver_Name 
                                                  "sqlite3odbc.dll" 
                                                         Driver_Ver 
                                                            "0.999" 
                                                           ODBC_Ver 
                                                       "03.80.0000" 
                                                        Server_Name 
"C:\\Users\\shals\\Documents\\R in a nutshell\\nutshell\\data\\bb1" 
> sqlListTables(bbdb1)
Error: could not find function "sqlListTables"
> sqlTables(bbdb1)
[1] TABLE_CAT   TABLE_SCHEM TABLE_NAME  TABLE_TYPE  REMARKS    
<0 rows> (or 0-length row.names)
> sqlPrimaryKeys(bbdb1,func,errors=FALSE,as.is=TRUE,catalog=NULL,schema=NULL)
Error in sqlPrimaryKeys(bbdb1, func, errors = FALSE, as.is = TRUE, catalog = NULL,  : 
  object 'func' not found

当数据库中有20个表时,任何人都可以帮助为什么sqlTables返回0行。

1 个答案:

答案 0 :(得分:1)

更改了连接字符串,如下所示,代码正常工作。

bbdb1 <- odbcConnect(dsn="bbdb",believeNRows = FALSE,rows_at_time = 1)