我想做个批处理导出sqlite数据库中指定表中的数据,具体代码如下:
test.bat
========================================================
@echo off
cd D:\PLAM\stock_analyze
D:
sqlite3 test.db < sqlitecmd.txt
========================================================sqlitecmd.txt 的内容如下:
========================================================
.header on
.output stat.csv
select * from tbl_stat;
.exit
========================================================问题:我想把表名通过参数(%var%)的方式传入到sqlitecmd.txt中,test.bat的文件改为如下:
========================================================
@echo off
cd D:\PLAM\stock_analyze
D:
set /p var=Please Enter table name: 
sqlite3 test.db < sqlitecmd.txt
========================================================希望达到的目的是: 导出输入表名的所有数据,谢谢!!!!

解决方案 »

  1.   

    简单一点儿,直接用
    sqlite3  -csv -header db1  "select * from t1" > aaa.csv
    这种格式!这样你的BAT可以写成
    [code=BatchFile]@echo off
    cd D:\PLAM\stock_analyze
    D:
    set /p var=Please Enter table name:  
    sqlite3  -csv -header test.db  "select * from %var%" > stat.csv[/code]
      

  2.   

    也可以用语言来生成BAT文件,替换表名,再执行
      

  3.   

    or
    sqlite3.exe dd.db <a1.txta1.txt
    .output r:/temp/123a.txt
    .dump用语言生成TXT文件即可
      

  4.   

    感谢各位的指点TO: ACMAIN_CHM@echo off
    cd D:\PLAM\stock_analyze
    D:
    set /p var=Please Enter table name:  
    sqlite3  -csv -header test.db  "select * from %var%" > stat.csv==================================================================我需要传入的参数较多,而且分散在文件中的多个位置,需要把变量直接传入文件,不知有什么好办法没有?