2010-10-26 1 views
5

У меня появилось сообщение «Не удается изменить свойство ActiveConnection объекта Recordset, у которого есть объект Command как исходная ошибка на моей классической странице asp пару раз, обычно после того, как я только что изменил хранимую процедуру.Что означает «Невозможно изменить свойство ActiveConnection объекта Recordset, у которого есть объект Command как его источник»?

В прошлом удаление и повторная установка приложений COM + и сброс IIS, похоже, устранили эту проблему. Я предположил, что прежнее свойство ActiveConnection каким-то образом хранилось в памяти, и обходной путь был устранен. Сегодня нет такой удачи.

Итак, мой первый вопрос: «Что означает эта ошибка?» Второй вопрос: «Как это исправить?»

Я пробовал проконсультироваться по следующим ссылкам, но, будучи новичком COM +, это сейчас над моей головой.

http://www.experts-exchange.com/Web_Development/Web_Languages-Standards/ASP/Q_20626178.html

http://msdn.microsoft.com/en-us/library/ee275490(BTS.10).aspx

ответ

8

Эта ошибка обычно связана с хранимой процедурой возвращения более чем один набор результатов, или возвращение rowcounts (попытайтесь добавить set nocount on в верхней части процедуры.)

Вы делали последние изменения в базе данных? Если это так, эти изменения станут хорошим местом для начала поиска.

P.S. Я поражен тем, что у вас есть приложение COM +, которое на самом деле используется в 2010 году. Фаза, что дерьмо как можно быстрее :)

+1

+1 для P.S. Хотя я думаю, что ответ на вопрос «Что это значит?» «Время переходить на .Net» – NotMe

+1

Перемещение на .NET - это то, что я хотел бы сделать, но трудно определить хорошие места для реорганизации существующей кодовой базы. –

+0

Фактически это «set nocount on», а не «set rowcount off». Это также может быть вызвано тем, что вы ожидаете, что proc будет возвращать rs, а это не так, он просто вставляет и возвращает код состояния или что-то еще. –

 Смежные вопросы

  • Нет связанных вопросов^_^