MySql Entity Framework Select - PullRequest
       2

MySql Entity Framework Select

0 голосов
/ 15 сентября 2010

У меня проблемы с запросом MySql.

string strSql = "select SQL_CALC_FOUND_ROWS *, pv.* from products pv WHERE pv.name = 'Teddy Bear';";

strSql += "SET @resultCount = FOUND_ROWS();"

MySqlParameter parm = new MySqlParameter("@resultCount",MySqlDbType.Int32)
parm.Direction = ParameterDirection.Output;

var result = ObjectContext.ExecuteStoreQuery<Product>(strSql,parm);
return result;

Возвращенная ошибка:

В синтаксисе SQL есть ошибка;проверьте руководство, соответствующее вашей версии сервера MySQL, на предмет правильного синтаксиса для использования рядом с 'NULL = FOUND_ROWS ()' в строке 1

Как получить @resultCount для возврата общего количества записей

1 Ответ

1 голос
/ 16 сентября 2010

При создании параметра, я думаю, вам нужно указать имя без @.

Также вам нужно указать направление параметра;Я думаю, что по умолчанию это только ввод, то есть вам нужно указать значение, которое будет вставлено в команду;что вы хотите, это вывод.Вы можете указать направление с помощью некоторых перегрузок при создании параметра или путем установки свойства - не знаю, отличается ли синтаксис от других провайдеров, поскольку я довольно давно не работал с MySql, но это должно быть:1004 *

parm.Direction = ParameterDirection.Output;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...