Ich benutze Entity Framework ExecuteStoreQuery, um eine MySql gespeicherte Prozedur mit Ausgabeparameter aufzurufen. Die Speicherprozedur gibt auch eine Ergebnismenge zurück.ASP.NET MVC EF Aufrufen von MySQL Stored Procedure mit Out-Parametern
Ich bekomme den folgenden Fehler.
OUT oder INOUT Argument 2 für Routine mydb.mysp ist keine Variable oder NEW pseudo-Variable im BEFORE-Trigger
Was ist falsch? Gibt es eine bessere Möglichkeit, MySql sp mit einer Mischung aus Parametern und Resultset aufzurufen?
Hier ist der Code
var outParam = new MySqlParameter();
outParam.ParameterName = "totalRowsOut";
outParam.MySqlDbType = MySqlDbType.Int64;
outParam.Direction = ParameterDirection.Output;
var data = db.ExecuteStoreQuery<PropertySearchResultRow>
(
"call mysp(@input1, @totalRowsOut);",
new MySqlParameter("input1", 10),
outParam
);
var result = data.ToList();
int totalRowsCount = (int)outParam.Value;
Hier ist der Fehler: Sie haben einen Fehler in der SQL-Syntax; Überprüfen Sie das Handbuch, das Ihrer MySQL-Serverversion entspricht, um die richtige Syntax in der Nähe von 'mysp' zu verwenden. –