(Windows批处理文件)此时设置是出乎意料的



我为此疯狂。我正在尝试编写一个很小的批处理文件,该文件将所有.CSV文件从文件夹加载到我的机器上的MySQL数据库中。

我直接从所有文件所在的文件夹中运行此.BAT。

SETLOCAL ENABLEDELAYEDEXPANSION
for %%f in (*.csv) do (
    mysql -e "LOAD DATA INFILE 'C:/ProgramData/MySQL/MySQL Server 5.7/Uploads/realtime/%%f' IGNORE INTO TABLE db.my_table FIELDS ENCLOSED BY '"' TERMINATED BY ',' LINES TERMINATED BY 'n' IGNORE 1 LINES (@TIME, NAME, ID, PRICE, LOSS) SET TIME = STR_TO_DATE(@TIME, '%c/%e/%Y %H:%i')" -u root -password='XXXXXXXXXX'
)

我总是收到错误消息:

SET was unexpected at this time.

从回声中,似乎也更改了str_to_date中的变量。

我在做什么错?

谢谢!

mysql语句中带有cac_2的 )逃脱 CC_1。

cmd)视为if-in-if条件或做法结束,需要通过逃脱帕伦(也是任何重定向器)

for什么?我猜for /f尝试以下方法:

for /f %%f in (*.csv) do (...

您没有选择for语句。循环或读取。

最新更新