![]() |
Модераторы: gambit |
![]() ![]() ![]() |
|
Atiskara |
|
||||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 73 Регистрация: 18.10.2007 Репутация: нет Всего: нет |
при выполнении ExecuteNonQuery возникает исключительная ситуация Cannot convert int to tinyint.. Причем есть 2 базы на mssql, одна тестовая, другая боевая. В тестовой никаких ошибок не возникает. В боевой ошибка возникает у последних зарегенных юзеров, у ранних работает норм, точную временную границу между ними не могу сказать. Подскажите, хотя бы где искать ошибку, в базе или в коде? Код не мой, но баг надо найти мне. С шарпом знакома поверхностно, а шарп вс асп вижу вообще впервые. Или как нужно обработать исключение, чтобы значение возвращалось?
наверно кусок кода мало что скажет
после обработки SP.ExecuteNonQuery() параметр (byte)SP.getParameter(1).Value не всегда получает значение...
|
||||
|
|||||
archeg |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 612 Регистрация: 6.1.2007 Где: Киев Репутация: нет Всего: 27 |
До (byte)SP.getParameter(1).Value дебаггер не доходит? Если нет - то ошибка в базе. Покажи код процедуры. И если в одной есть ошибка - а в другой нету, то либо там процедуры разные, либо какие-то настройки.
-------------------- ИМХО задница есть универсальный интерфейс. Ибо через задницу можно сделать абсолютно ВСЕ (bash.org.ru) Дядька всегда можно спросить в аське, если не задалбывать - не откажет ![]() И вообще, на самом деле я студент, и ненавижу обращение на "Вы") Тут все свои ;) |
|||
|
||||
Idsa |
|
|||
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2086 Регистрация: 5.12.2006 Где: Томск Репутация: 15 Всего: 62 |
Atiskara, посмотрите, какие типы у параметров хранимки и используйте аналогичные типы из .NET: тогда не будет проблем с приведением типов и пропаданием значений.
|
|||
|
||||
Atiskara |
|
||||||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 73 Регистрация: 18.10.2007 Репутация: нет Всего: нет |
когда я трай кетч убираю, то вот здесь возникает ошибка sqlCmd.ExecuteNonQuery();, ну а если с обработкой, то вот if((byte)SP.getParameter(1).Value == 0) Добавлено через 12 минут и 42 секунды
Хранимка это наверно процедура, где все это выполняется?
|
||||||
|
|||||||
Idsa |
|
|||
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2086 Регистрация: 5.12.2006 Где: Томск Репутация: 15 Всего: 62 |
Там нужно указать тип, сооветствующий типу, прописанному в хранимой процедуре в СУБД. |
|||
|
||||
archeg |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 612 Регистрация: 6.1.2007 Где: Киев Репутация: нет Всего: 27 |
Имелся ввиду код процедуры который на сервере ;) -------------------- ИМХО задница есть универсальный интерфейс. Ибо через задницу можно сделать абсолютно ВСЕ (bash.org.ru) Дядька всегда можно спросить в аське, если не задалбывать - не откажет ![]() И вообще, на самом деле я студент, и ненавижу обращение на "Вы") Тут все свои ;) |
|||
|
||||
Atiskara |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 73 Регистрация: 18.10.2007 Репутация: нет Всего: нет |
бррр.. а я не знаю, что с чем сравнивать
![]() Добавлено через 8 минут и 56 секунд
вообще непонятно, как этот Value для pr[1] получает значение... Для старых пользователей, это значение откуда то присваивается при выполнении ExecuteNonQuery, а для последних нигде не присваивается. Это сообщение отредактировал(а) Atiskara - 10.4.2009, 17:31 |
|||
|
||||
Partizan |
|
|||
![]() Let's do some .NET ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 2828 Регистрация: 19.12.2005 Где: Санкт-Петербург Репутация: нет Всего: 67 |
Нет...код процедуры хранится в самой СУБД.... -------------------- СУВ, Partizan. |
|||
|
||||
Idsa |
|
|||
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2086 Регистрация: 5.12.2006 Где: Томск Репутация: 15 Всего: 62 |
Я бы даже сказал, в самой БД ![]() |
|||
|
||||
Atiskara |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 73 Регистрация: 18.10.2007 Репутация: нет Всего: нет |
ура, спасибо спасибо люди всем.. нашлась ошибка
![]()
действительно тип в этой строчке, и тип в базе отличались. Конечно осталось загадкой, почему иногда все работало, а иногда нет... |
|||
|
||||
Idsa |
|
|||
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2086 Регистрация: 5.12.2006 Где: Томск Репутация: 15 Всего: 62 |
Никакой загадки в этом нет. Просто иногда возвращалось значение, которое умещалось в TinyInt и приведение типов проходило без проблем, а иногда возвращаемое значение превышало границы TinyInt - соответственно, при приведение типа генерировался Exception. |
|||
|
||||
Atiskara |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 73 Регистрация: 18.10.2007 Репутация: нет Всего: нет |
ааа..
![]() |
|||
|
||||
![]() ![]() ![]() |
Прежде чем создать тему, посмотрите сюда: | |
|
Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов. Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, stab, mr.DUDA, Exception. |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Базы данных под .NET | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |