我正在使用以下代码:
MySqlTransaction trnData = pconDB.BeginTransaction();
MySqlCommand cmdData = new MySqlCommand();
cmdData.Connection = pconDB;
cmdData.CommandTimeout = plngQueryTimeOut;
cmdData.CommandType = CommandType.Text;
cmdData.CommandText = "CALL spsOME( 4, 'DATA', 389552022,@intOutReturn);";
cmdData.Transaction = trnData;
plngRecordsCount = cmdData.ExecuteNonQuery();
不能直接从.net库获取
CALL
语句吗?相同的查询正在工作台上工作。 最佳答案
将以下两行更改为:
cmdData.CommandType = CommandType.StoredProcedure;
cmdData.CommandText = "spsOME( 4, 'DATA', 389552022,@intOutReturn);";
您还需要为
cmData
参数将参数添加到@intOutReturn
的Parameters集合中。我不会给出一个示例,因为语法随数据库而异,而且我也不知道MySQL的外观。另外,这一行:
cmdData.Transaction = trnData;
仅当您正在执行其他应该在同一事务中的数据库操作时,..才是必需的。如果您不是,那我就不用说了。
关于c# - “命令执行期间遇到致命错误。” mysql-connector .net,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/24279926/