diff options
author | unknown <cmiller@zippy.cornsilk.net> | 2007-04-27 16:45:01 -0400 |
---|---|---|
committer | unknown <cmiller@zippy.cornsilk.net> | 2007-04-27 16:45:01 -0400 |
commit | 4687fe01d7e3ff566e045b1f538562412f4f4c00 (patch) | |
tree | dc6a3a60b71e4a3cbaadb6dc739d736ab8014ac5 /client/mysqlcheck.c | |
parent | 3a58af9c0db3a3e34453fe1689ca4287be9b396a (diff) | |
parent | 1698b4f2ddbb61aa4f3ad69e941bac688822d00d (diff) | |
download | mariadb-git-4687fe01d7e3ff566e045b1f538562412f4f4c00.tar.gz |
Merge zippy.cornsilk.net:/home/cmiller/work/mysql/mysql-5.0-enterprise-formergecomm
into zippy.cornsilk.net:/home/cmiller/work/mysql/mysql-5.1-unified02
BitKeeper/etc/collapsed:
auto-union
configure.in:
Auto merged
BitKeeper/deleted/.del-CMakeLists.txt~3:
Auto merged
BitKeeper/deleted/.del-ha_berkeley.cc:
Auto merged
client/mysqlcheck.c:
Auto merged
include/config-win.h:
Auto merged
libmysqld/Makefile.am:
Auto merged
mysql-test/r/func_in.result:
Auto merged
mysql-test/r/mysqlcheck.result:
Auto merged
mysql-test/t/func_in.test:
Auto merged
mysql-test/t/information_schema.test:
Auto merged
mysql-test/t/mysqlcheck.test:
Auto merged
sql/ha_ndbcluster.cc:
Auto merged
sql/item_cmpfunc.cc:
Auto merged
sql/item_func.cc:
Auto merged
sql/log_event.cc:
Auto merged
sql/repl_failsafe.cc:
Auto merged
sql/set_var.h:
Auto merged
sql/sp_head.cc:
Auto merged
sql/sql_cache.cc:
Auto merged
sql/sql_class.cc:
Auto merged
sql/sql_class.h:
Auto merged
sql/sql_lex.cc:
Auto merged
sql/sql_prepare.cc:
Auto merged
sql/sql_repl.cc:
Auto merged
sql/sql_view.cc:
Auto merged
storage/myisam/ha_myisam.cc:
Auto merged
storage/myisam/mi_open.c:
Auto merged
storage/myisammrg/ha_myisammrg.cc:
Auto merged
include/my_dbug.h:
Manual merge.
mysql-test/r/information_schema.result:
Manual merge.
mysql-test/r/information_schema_db.result:
Manual merge.
mysql-test/r/mysqlshow.result:
Manual merge.
sql/Makefile.am:
Manual merge.
sql/lex.h:
Manual merge.
sql/lock.cc:
Manual merge.
sql/mysql_priv.h:
Manual merge.
sql/mysqld.cc:
Manual merge.
sql/set_var.cc:
Manual merge.
sql/slave.cc:
Manual merge.
sql/sql_base.cc:
Manual merge.
sql/sql_delete.cc:
Manual merge.
sql/sql_insert.cc:
Manual merge.
sql/sql_lex.h:
Manual merge.
sql/sql_parse.cc:
Manual merge.
sql/sql_select.cc:
Manual merge.
sql/sql_show.cc:
Manual merge.
sql/sql_table.cc:
Manual merge.
sql/sql_update.cc:
Manual merge.
sql/sql_yacc.yy:
Manual merge.
sql/structs.h:
Manual merge.
sql/table.h:
Manual merge.
storage/archive/ha_archive.cc:
Manual merge.
storage/ndb/src/common/util/File.cpp:
Manual merge.
storage/ndb/src/ndbapi/DictCache.cpp:
Manual merge.
support-files/mysql.spec.sh:
Manual merge.
Diffstat (limited to 'client/mysqlcheck.c')
-rw-r--r-- | client/mysqlcheck.c | 27 |
1 files changed, 15 insertions, 12 deletions
diff --git a/client/mysqlcheck.c b/client/mysqlcheck.c index 43a938badbe..28b3103c53e 100644 --- a/client/mysqlcheck.c +++ b/client/mysqlcheck.c @@ -472,14 +472,17 @@ static int process_all_tables_in_db(char *database) { MYSQL_RES *res; MYSQL_ROW row; + uint num_columns; LINT_INIT(res); if (use_db(database)) return 1; - if (mysql_query(sock, "SHOW TABLE STATUS") || + if (mysql_query(sock, "SHOW /*!50002 FULL*/ TABLES") || !((res= mysql_store_result(sock)))) return 1; + num_columns= mysql_num_fields(res); + if (opt_all_in_1) { /* @@ -502,12 +505,11 @@ static int process_all_tables_in_db(char *database) } for (end = tables + 1; (row = mysql_fetch_row(res)) ;) { - /* Skip tables with an engine of NULL (probably a view). */ - if (row[1]) - { - end= fix_table_name(end, row[0]); - *end++= ','; - } + if ((num_columns == 2) && (strcmp(row[1], "VIEW") == 0)) + continue; + + end= fix_table_name(end, row[0]); + *end++= ','; } *--end = 0; if (tot_length) @@ -517,11 +519,12 @@ static int process_all_tables_in_db(char *database) else { while ((row = mysql_fetch_row(res))) - /* Skip tables with an engine of NULL (probably a view). */ - if (row[1]) - { - handle_request_for_tables(row[0], strlen(row[0])); - } + { + if ((num_columns == 2) && (strcmp(row[1], "VIEW") == 0)) + continue; + + handle_request_for_tables(row[0], strlen(row[0])); + } } mysql_free_result(res); return 0; |