MySQL ошибка командной строки - PullRequest
0 голосов
/ 05 мая 2020

У меня проблемы с выполнением сценария .bat, который выполняет некоторые команды в mysql. Я не могу понять, что происходит. Моя проблема заключается в выполнении этой windows командной строки ниже:

c:\mysql.exe -h instance -udbuser -pPass db -e "INSERT INTO db.table1 (SELECT REPLACE(CONCAT(TRIM(co_ano),'-',TRIM(co_mes),'-1'),'"', '') as col1,REPLACE(TRIM(col2_temp),'"', '') as col2, REPLACE(TRIM(col3_temp),'"', '') as col3, REPLACE(TRIM(col4_temp),'"', '') as col4, REPLACE(TRIM(col5_temp),'"', '') as col5, REPLACE(TRIM(col6_temp),',','.') as col6, REPLACE(TRIM(col7_temp),',','.') as col7 FROM db.temp_table1);"

Когда я разделяю команду и выполняю ее по частям, она работает нормально. Пример:

 c:\mysql.exe -h instance -udbuser -pPass db 

Это работает, и теперь я нахожусь в mysql>

В mysql командной строке, когда я выполняю это:

mysql>INSERT INTO db.table1 (SELECT REPLACE(CONCAT(TRIM(co_ano),'-',TRIM(co_mes),'-1'),'"', '') as col1, REPLACE(TRIM(col2_temp),'"', '') as col2, REPLACE(TRIM(col3_temp),'"', '') as col3, REPLACE(TRIM(col4_temp),'"', '') as col4, REPLACE(TRIM(col5_temp),'"', '') as col5, REPLACE(TRIM(col6_temp),',','.') as col6, REPLACE(TRIM(col7_temp),',','.') as col7 FROM db.temp_table1);

и Итак, работает.

Почему первая команда не работает? Мне нужно выполнить эту команду с помощью командного файла.

Я хотел бы добавить, что приведенная ниже команда работает нормально

c:\mysql.exe -h instance -udbuser -pPass db -e "OPTIMIZE TABLE temp_table1"

MySQL Ver 8.0.17

Кто-нибудь может мне помочь?

...