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();
            }
        }

MySQL ODBC驱动程序:SQL可以在类似编辑器的工作台中工作,但不能在其中工作.NET odbc

将SQL括在括号中:

string sql = "{ ​CALL spCreateTrade (?,?,?,?,?,?,?) }";