尝试运行以下命令:
run-MySQLQuery -ConnectionString "Server=192.168.0.1;Uid=powershell;Pwd=password;database=table;" -Query " LOAD DATA LOCAL INFILE 'U://CSV-Replaced-Output//zzz_test_load.csv' INTO TABLE sample_temp FIELDS TERMINATED BY ',' ENCLOSED BY '\"' LINES TERMINATED BY '\r\n' Ignore 1 Lines (@Title,@Location,@Company,@Url, @Description, @SourceType) set Title=@Title,Location=@Location,Company=@Company,url=@url,description=@description;";
它失败并出现错误“缺少终止符:'。”在 powershell 中
请问有人可以帮忙吗?
最佳答案
PowerShell 内插字符串中的转义字符是反引号,而不是反斜杠。 -Query 参数的字符串参数以 ENCLOSED BY\"
结尾,后跟单引号字符串 ' LINES TERMINATED BY '
,然后是 \r\n
,然后是一个永不终止的单引号字符串。
将 \"
更改为 `"
。
或者,如果由于某种原因 Run-MySQLQuery 函数内部的原因需要使用反斜杠转义 "
,那么问题在于您'不会为 shell 转义它。在这种情况下,请将 \"
更改为 \`"
(首先转义 shell 的双引号,然后传递一个字符串函数的反斜杠转义双引号)。
关于mysql - 加载数据文件 Powershell 缺少终止符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24874684/