我最近升级了R,RSQLite和sqldf(以下版本).
一般:
sqldf('create table foo as select * from bar', db = 'test.db')
Run Code Online (Sandbox Code Playgroud)
应该在附加的sqlite数据库中创建一个名为'foo'的表,如果存在加载新表,则使用数据框'bar'.
相反,我得到一个'没有这样的表'错误,而且当我查看数据库时,创建了'foo'和'bar'表.
可重复的例子:
library(RSQLite)
library(sqldf)
mydb = 'test.db'
## remove file if it exists
system(paste('rm', mydb))
## open connection
##con <- dbConnect(SQLite(), dbname=mydb)
system(paste('ls -l', mydb))
sqldf( paste0( 'attach "', mydb, '" as new' ) )
system(paste('ls -l', mydb))
class(mtcars)
sqldf( 'create table mycars as select * from mtcars', dbname = mydb )
sqldf('select * from sqlite_master', dbname = mydb)
sqldf('select * from main.mycars limit 1', dbname …Run Code Online (Sandbox Code Playgroud)