Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Вызов хранимых процедур из MySQL через MySQL Connector .NET

279
02 февраля 2009 года
bave
456 / / 07.03.2004
Проблема при вызове процедур через MySQL Connector .NET 1.0.10

Пытаюсь вызвать хранимую процедуру с двумя параметрами, код вызова следующий:

Код:
MySqlConnection connection = new MySqlConnection(connectionString);

        MySqlCommand sqlCommand = new MySqlCommand("DoEnter", connection);

        sqlCommand.CommandType = CommandType.StoredProcedure;
        sqlCommand.Parameters.Add("cookie", MySqlDbType.VarChar, 255);
        sqlCommand.Parameters.Add("ip", MySqlDbType.VarChar, 255);

        sqlCommand.Parameters["cookie"].Direction = ParameterDirection.Input;
        sqlCommand.Parameters["cookie"].Value = sessionId;

        sqlCommand.Parameters["ip"].Direction = ParameterDirection.Input;
        sqlCommand.Parameters["ip"].Value = ip;

        connection.Open();

        MySqlDataReader redaer = sqlCommand.ExecuteReader();


Код хранимой процедуры (процедура точно рабочая с квери броузера выполняется как надо):

Код:
DELIMITER $$

DROP PROCEDURE IF EXISTS `flyworker_test2_db`.`DoEnter` $$
CREATE DEFINER="dbdevel"@"%" PROCEDURE "DoEnter"(
    in cookie nvarchar(255)
    , in ip nvarchar(255)
  )
begin
  declare login nvarchar(255) default '';
  declare is_enter_enable bool default false;
  declare system_role nvarchar(255) default '';
  declare admin_comment text default '';
  declare is_banned bool default false;
  declare host_id bigint unsigned default 0;
  declare cookie_actual_time int unsigned default 14;
  declare session_cookie nvarchar(255) default '';
  declare account_id bigint unsigned default 0;
  declare ban_date datetime default null;
  declare ban_duration int unsigned default null;

  set cookie_actual_time = 14;

start transaction;
 
   -- тут много чего делается...
   
commit;

  select
    login Login
    , is_enter_enable IsEnterEnable
    , system_role SystemRole
    , is_banned IsBanned
    , admin_comment AdminComment
    , session_cookie SessionId
    , ban_date BanDate
    , ban_duration BanDuration;

end $$

DELIMITER ;


И вот при попытке выполнить MySqlDataReader redaer = sqlCommand.ExecuteReader(); каждый раз получаю исключение: Unhandled type encountered

В чём причина не вижу...
--------------
На MySQL-евском форуме куча народу с тем же вопросом и не одного ответ :(
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог