批处理文件中的SQL结果

问题描述:

先生。这是我的代码批处理文件中的SQL结果

@echo off 
SET path=C:\Users\neca\Desktop cd C:\wamp\bin\mysql\mysql5.5.24\bin 

FOR /F "tokens=*" %%D IN ('mysql -uroot -e "SHOW TABLES from sample"') do echo %%D 

pause 

但在我的数据库我只有2个表(样品和测试)。为什么这段代码的 输出

Tables_in_sample 
sample 
test 

其中Tables_in_sample是,我没有做一个表。

Tables_in_sample距离mysql客户

mysql> show tables from mysql; 
+---------------------------+ 
| Tables_in_mysql   | 
+---------------------------+ 
| columns_priv    | 
| db      | 
| event      | 
| func      | 
| general_log    | 
| help_category    | 
| help_keyword    | 
| help_relation    | 
| help_topic    | 
| innodb_index_stats  | 
| innodb_table_stats  | 
| ndb_binlog_index   | 
| plugin     | 
| proc      | 
| procs_priv    | 
| proxies_priv    | 
| servers     | 
| slave_master_info   | 
| slave_relay_log_info  | 
| slave_worker_info   | 
| slow_log     | 
| tables_priv    | 
| time_zone     | 
| time_zone_leap_second  | 
| time_zone_name   | 
| time_zone_transition  | 
| time_zone_transition_type | 
| user      | 
+---------------------------+ 
28 rows in set (0.00 sec) 

mysql> 

头见的输出的报头是Tables_in_mysql

SUGGESTION

使用-ANe只是禁用头,而不是只是-e

@echo off 
SET path=C:\Users\neca\Desktop cd C:\wamp\bin\mysql\mysql5.5.24\bin 

FOR /F "tokens=*" %%D IN ('mysql -uroot -ANe "SHOW TABLES from sample"') do echo %%D 

pause 

试试看!

+0

谢谢,我已经知道了:)使用** -N -B -e **而不是** -e **只有 – xXxrk04 2015-02-09 01:53:16

+0

谢谢先生。 :) ........................ – xXxrk04 2015-02-09 03:24:47

@回响 SET路径= C:\用户\ NECA \桌面 CD C:\瓦帕\ BIN \ MySQL的\ mysql5.5.24 \ BIN

FOR/F “令牌= *” %% d IN('mysql -uroot -N -B -e“SHOW TABLES from sample'')do echo %% D