MySQL ODBC驱动程序:SQL可以在类似编辑器的工作台中工作,但不能在其中工作.NET odbc
本文关键字:工作 工作台 但不能 odbc NET 在其中 编辑器 驱动程序 ODBC SQL MySQL | 更新日期: 2023-09-27 18:08:29
错误[42000][MySQL][ODBC 5.1驱动程序][mysqld-5.5.9-log]您的SQL语法有错误;查看与您的MySQL服务器版本对应的手册,了解在附近使用的正确语法在第1行致电spCreateTrade(27756,'27751','820','1','126','RADE','Approved'('
这个查询在MySQL工作台这样的编辑器中运行得非常好。我使用过相同的SQL用户。我一辈子都弄不明白为什么这不起作用。
parameters.Add(new OdbcParameter("pEmployeeDB_ID", co.DB_ID));
parameters.Add(new OdbcParameter("pOther_EmployeeDB_ID", EmployeeDB_ID.ToString()));
parameters.Add(new OdbcParameter("pCO_ID", CO_ID.ToString()));
parameters.Add(new OdbcParameter("pDPID", co.Department_Position_ID.ToString()));
parameters.Add(new OdbcParameter("pCompleted_By", Completed_By.ToString()));
parameters.Add(new OdbcParameter("pAction_type", "TRADE"));
parameters.Add(new OdbcParameter("sStatus", "Approved"));
string sql = "CALL spCreateTrade (?,?,?,?,?,?,?)";
DataSet retVal = new DataSet();
if (connString != null)
{
using (OdbcConnection connection = new OdbcConnection(connString))
{
//Open it
connection.Open();
//Create the command
OdbcCommand command = new OdbcCommand(sql, connection);
command.CommandType = cmdType;
if (parameters != null)
{
foreach (OdbcParameter p in parameters)
{
command.Parameters.Add(p);
}
}
command.ExecuteNonQuery();
//Close the connection.
connection.Close();
}
}
将SQL括在括号中:
string sql = "{ CALL spCreateTrade (?,?,?,?,?,?,?) }";