2014-06-14 73 views
0

錯誤[42000] [MySQL] [ODBC 5.1驅動程序] [mysqld-5.5.9-log] SQL中有錯誤句法;檢查與您的MySQL服務器版本相對應的手冊,以找到在CALL spCreateTrade(27756,'27751','820','1','126','TRADE','Approved')附近使用的正確語法第1行MySQL ODBC驅動程序:SQL在編輯器中工作,但不在.NET中odbc

這個查詢在像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(); 
      } 
     } 

回答

0

方括號括起來的SQL:

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