【发布时间】:2021-10-19 21:36:04
【问题描述】:
在 C# 中使用 MySQLConnection 尝试执行 LOAD LOCAL DATA INFILE 时,如何解决错误“此 MySQL 版本不允许使用的命令”
完整的错误是: MySql.Data.MySqlClient.MySqlException HResult=0x80004005 Message=此 MySQL 版本不允许使用的命令
【问题讨论】:
在 C# 中使用 MySQLConnection 尝试执行 LOAD LOCAL DATA INFILE 时,如何解决错误“此 MySQL 版本不允许使用的命令”
完整的错误是: MySql.Data.MySqlClient.MySqlException HResult=0x80004005 Message=此 MySQL 版本不允许使用的命令
【问题讨论】:
在连接字符串中,包括 AllowLoadLocalInfile=true; 服务器也需要设置允许本地加载数据infile
string connectionStr = "Server=" + server + "; Database=" + database + ";Uid=" + user + ";Pwd="+ pw + ";Port=" + port + "; CharSet=utf8;ConnectionTimeout=6000;DefaultCommandTimeout=6000;";
connectionStr += "AllowLoadLocalInfile=true;"; // Added on separate line for clarity
try
{
sourceConn = new MySqlConnection(connectionStr);
sourceConn.Open();
}
catch(Exception ex)
{
Console.WriteLine("Error opening db connection: " + ex.Message + " trace: " + ex.StackTrace);
}
【讨论】: