2016-04-03 52 views
1

按照official documentation這是你如何可以導出表爲.csv:sqlite3的:錯誤:未知命令,或者無效參數:「一次」

sqlite> .header on 
sqlite> .mode csv 
sqlite> .once c:/work/dataout.csv 
sqlite> SELECT * FROM tab1; 
sqlite> .system c:/work/dataout.csv 

然而,命令序列的第3行我獲得:

Error: unknown command or invalid arguments: "once". Enter ".help" for help 

我的路徑有效,我有權寫入該位置。我的sqlite3的版本是

sqlite> .version 
SQLite 3.8.2 2013-12-06 14:53:30 27392118af4c38c5203a04b8013e1afdb1cebd0d 

在Ubuntu 14.04

我用Google搜索了此錯誤信息,它這個沒什麼用處遠遠跑。


FIX:

sqlite> .header on 
sqlite> .mode csv 
sqlite> .output dataout.csv 
sqlite> SELECT * FROM tab1 

應爲當前版本。否則更新到更新的版本。

回答

2

once命令在基於changelog的SQLite版本3.8.5中添加,因此它不存在於您的系統中。如果你真的需要它,你可以將你的版本升級到更新的版本。

如果您不想/不能升級,您可以使用output命令,並在其後運行一條SQL命令以獲得相同的效果。

1

.once的命令在SQLite的3殼是從version 3.8.5, circa June 2014。您的版本來自此命令之前的版本,因此「未知命令」錯誤。

要麼找到一個上最新的SQLite包,或編譯並從源安裝的SQLite。

+0

好吧,我剛剛通過檢查頁面的其餘部分來實現這一點。 –