从Ruby访问SQLite3模式

时间:2016-04-22 12:08:37

标签: ruby macos sqlite sqlite3-ruby

我遇到了各种类似的问题,但我无法弄清楚。

如何使用ruby中的.import命令?我的意思是,当你运行sqlite3时,你可以输入命令,如下所示:

sqlite3> .import file table

那么,如何将文件导入sqlite3内存数据库并在其上执行sql?

my" not-so-pseudocode" (哪个不起作用):

require 'sqlite3'
begin
    db = SQLite3::Database.new ":memory:"
    db.execute ".import file table"   #<----- not working, obviously

rescue SQLite3::Exception => e

    puts "Exception occurred"
    puts e

ensure
    db.close if db
end

1 个答案:

答案 0 :(得分:0)

“。import”和其他“dot”命令不是sqlite3库的一部分,但它们是sqlite3命令行工具的一部分。因此,您必须实现命令在程序中执行的操作,或者从ruby调用“sqlite3”程序,就像使用任何其他外部程序一样,使用例如系统或其他手段。