我正在尝试将csv文件导出到固定长度的文件。 我正在使用SQLite,因为我必须处理该文件。
我遇到的问题是输出。
以下是我从sql文件运行的代码:
.output stdout --send output to screen
.echo off
.headers off
.separator ','
.mode column
.open tmp.db
DROP TABLE IF EXISTS myData;
.import 'C:\2015.csv' myData
.width 4 4 1 6 16 2 6
.output myData.txt --send output to file
select * from myData;
.output stdout --send output back to screen
.print "File was created."
DROP TABLE IF EXISTS myData;
vacuum;
.print "tmp.db vacuum complete"
.print "Type '.exit' or '.quit' to exit SQLite"
.exit
问题是在第一行中,我将输出发送到屏幕,我收到错误:
错误:未知命令或无效参数:“输出”。输入“.help” 寻求帮助
脚本执行,但它实际上显示了sql的结果(并且它还将它们写入文件)。
但是,如果我从sqlite控制台运行每一个命令,一切正常。当我使用.read
从SQLite控制台运行它时,我只收到错误有什么建议吗?我错过了什么?我检查了SQLite网站上的文档,在提供的示例中,他们将输出从控制台切换到文件并以相同的方式返回。
谢谢。
答案 0 :(得分:4)
我想我发现了问题:
.output stdout --send output to screen
显然,--send...
被解释为一个参数。在--
修复问题后删除stdout
和评论。
谢谢!
答案 1 :(得分:2)
.output
命令需要一个参数,而不是五个。
此表单可以正常使用:
.output stdout