[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[文本处理] [已解决]mysql执行.sql文件出错时批处理能否提示

本帖最后由 hucuibai 于 2011-4-22 17:04 编辑

我用批处理执行mysql -uroot -p123456 <***\***.sql&&echo ok||echo failed
这个好像不行!
1

评分人数

    • Batcher: 感谢给帖子标题标注[已解决]字样PB + 2

我这里没问题啊

D:\>type t.sql
use test;
select * from test;
D:\>mysql -uroot -proot <D:\t.sql&&echo ok||echo failed
id      name
1       aa,bb,cc
ok

D:\>

TOP

2# zz100001


哦 可能是我没说清楚,我是要重定向这个错误,批处理的错误可以重定向到文件,但是mysql程序的错误只输出到屏幕,不能重定向到文件!

TOP

本帖最后由 batman 于 2011-4-22 10:12 编辑
  1. @echo off
  2. mysql -uroot -p123456 <***\***.sql|findstr "错误信息关键字">a.txt
  3. start a.txt
复制代码
1

评分人数

***共同提高***

TOP

怎么不行?你写的有问题吧
D:\>type t.sql
use test;
select * from test;
select * from ttm;
D:\>mysql -uroot -proot < D:\t.sql 2>D:\e.txt
id      name
1       aa,bb,cc

D:\>type e.txt
ERROR 1146 (42S02) at line 3: Table 'test.ttm' doesn't exist

D:\>

TOP

5# zz100001


那就去了怪了 ,我的就不行!我也是这么写的啊

TOP

返回列表