r - 通过 RODBC 连接到 SQLite

标签 r odbc rodbc

我正在尝试通过 RODBC 包连接到 sqlite 数据库。

1.) 我已经从 http://www.ch-werner.de/sqliteodbc/ 安装了 SQLite ODBC 驱动程序并使用 Windows 7 中的 ODBC 数据源管理器进行设置。设置为锁定超时 20 毫秒、同步模式正常和选中“不创建数据库”。我可以在“用户 DSN”选项卡中看到我的数据源作为 SQLite3 ODBC 驱动程序。

2.) 在 R 中,我运行以下命令连接到数据库。到目前为止没有问题。看起来它设置正确。

library(RODBC)
con <- odbcConnect("dbss")
odbcGetInfo(con)
                                   DBMS_Name 
                                   "SQLite" 
                                   DBMS_Ver 
                                    "3.8.2" 
                            Driver_ODBC_Ver 
                                    "03.00" 
                           Data_Source_Name 
                                     "dbss" 
                                Driver_Name 
                          "sqlite3odbc.dll" 
                                 Driver_Ver 
                                    "0.996" 
                                   ODBC_Ver 
                               "03.80.0000" 
                                Server_Name 
                               "U:\\Research\\data\\smartsystemtic\\db.sqlite" 

3.) 但是,如果我想查询表或只是显示我遇到问题的表。我可以看到(使用 SQLite Studio)我有一个名为“School”的表,有 4 列和 3 行。
> sqlQuery(con, paste("SELECT * FROM School"))
[1] SchID     Location  Authority SchSize  
<0 rows> (or 0-length row.names)

我知道有 3 行在查看 SQLite Studio。

4.) 我也得到
> sqlTables(con)
[1] TABLE_CAT   TABLE_SCHEM TABLE_NAME  TABLE_TYPE  REMARKS    
<0 rows> (or 0-length row.names)

而在 SQLite Studio 中,我看到了 4 个数据库表。

你能告诉我我做错了什么吗?谢谢你。

最佳答案

沃尔夫冈

汤米奥戴尔的回答 here为我工作。

我包括 believeNRows = FALSE, rows_at_time = 1打开到 SQLite 的 ODBC 连接时。

关于r - 通过 RODBC 连接到 SQLite,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21775811/

相关文章:

r - Magrittr 转发管道无法将值转发到 openXL::addWorksheet - "Error ...: First argument must be a Workbook"

excel - 没有 header 的 ODBC xlsx 驱动程序连接字符串

C# 打开 DBF 文件

r - RODBC 包的替代方案,用于建立从 R 到 MS Access 的连接

sqlQuery : impossible to get the ID number as Character into R?

r - 可以在 R 中使用 gganimate 对多边形填充进行动画处理吗?

r - 如何提取具有正值和负值的相同行

r - 动态公式不适用于startsWith和colnames

python - 使用 turbodbc 从 Python 访问 Linux 上的 Postgres

mysql - 每次在 MySQL 数据库中加载 R 输出