下面是我的script.bat的内容:
@echo off
cd C:Program FilesTeradataClient13.0bin
bteq .LOGON server/username,password;
select date;
.LOGOFF
@echo off goto end
:end @echo exit
我对登录没有问题,但似乎bteq无法读取我的查询语句:
选择日期;
提示输入。谁能帮我让bteq读取和执行查询语句?
我已经尝试了关于输入和输出文件的在线解决方案:
bteq <myscript.txt> mylog.log
您将需要两个文件,一个是批处理文件,另一个是命令文件。
批处理文件:
echo off
cd C:bteq_directory
bteq < c:commands.txt > c:output.txt 2>&1
@echo off goto end
:end @echo exit
命令:
.LOGON server/username,password
select date;
.LOGOFF
编辑:去掉.LOGON...
后面的分号
这有点晚了,但这是我发现的:
我将BTEQ脚本保存在名为BTScript.txt的文件中:
.LOGON <servername>/<username>,<password>;
.SET WIDTH 20000;
.SET separator '|';
.EXPORT FILE = C:TEMPtestBTEQ.txt;
SELECT top 10 * ATABLENAME;
.LOGOFF
.EXIT
宽度的设置是为了防止数据被截断,如果记录不是那么长,它不会达到20000个字符。
为了运行这个,我在一个.bat文件上执行(我的pc设置为允许我双击windows资源管理器中的文件来执行此操作),其内容为:
echo off
bteq < C:tempBTScript.txt > c:tempbteqscriptout.txt 2>&1
@echo off goto end
:end @echo exit
这里提到的第二个文件将包含BTEQ的输出。