我需要一些我有这个代码
ignore_tbl=("mg_de_reifen_import_temp" "mg_de_reifen_import" "mg_de_reifen_import_last")
until mysqladmin -u$dbUser -p$dbPass ping; do echo "Waiting for mysqld"; sleep 10; done
mysql -u$dbUser -p$dbPass -e "create database if not exists $dbName"
IGNORED_TABLES_STRING=''
for TABLE in "${ignore_tbl[@]}"
do
IGNORED_TABLES_STRING+="table_schema = 'exclude_test' AND table_name LIKE '${TABLE}' AND "
done
TEST="${IGNORED_TABLES_STRING:0:-5}"
echo $TEST
mg_=`mysql -u$dbUser -p$dbPass -e "SET SESSION group_concat_max_len = 200000; SELECT CONCAT( 'DROP TABLE ', GROUP_CONCAT(table_name) , ';' ) FROM information_schema.tables WHERE $TEST;" -s` echo $mg_
它返回NULL
结果是
mysqld is alive
table_schema = 'exclude_test' AND table_name LIKE 'mg_de_reifen_import_temp' AND table_schema = 'exclude_test' AND table_name LIKE 'mg_de_reifen_import' AND table_schema = 'exclude_test' AND table_name LIKE 'mg_de_reifen_import_last'
NULL
答案 0 :(得分:1)
您的测试永远不会成功,因为'mg_de_reifen_import_temp
与mg_de_reifen_import_last
不同 - 您需要调整构建测试语句的方式,也许您需要更多类似的内容:
table_schema = 'exclude_test' AND table_name IN ( 'mg_de_reifen_import_temp', 'mg_de_reifen_import', 'mg_de_reifen_import_last' )