2010-08-05 159 views
1

我想使用Ruby腳本將文件導入爲SQLite 3中的表。我需要分配標籤分離器,和我用下面的代碼:SQLite3/Ruby語句問題

db = SQLite3::Database.new("meshdb2.db") 
db.execute("CREATE TABLE IF NOT EXISTS pubmed(id integer primary key,prideID INT NOT NULL,pubmedID VARCHAR(10) NOT NULL) 
db.prepare(".separator '\t'") 

我回來了「/usr/local/lib/ruby/gems/1.8/gems/sqlite3-ruby-1.2。 4/lib/sqlite3/errors.rb:62:在'check'中:near「。」:語法錯誤(SQLite3 :: SQLException)「錯誤,我認爲這是因爲db.prepare()命令。當我想通過Ruby傳遞設置到SQLite 3時,什麼是正確的命令?

-Bobby

回答

1

您在查詢後第二行缺少結尾引號。

db.execute("CREATE TABLE IF NOT EXISTS pubmed(id integer primary key,prideID INT NOT NULL,pubmedID VARCHAR(10) NOT NULL") 
# >------------------->------------------->------------------->------------------->------------------->----------------^ 
+0

對不起,那是在真正的程序中,當我在這裏複製並粘貼到文本框中時,它被切斷。任何其他的想法爲什麼這個準備()不起作用? – Bobby 2010-08-05 22:10:17