powered by simpleCommunicator - 2.0.50     © 2025 Programmizd 02
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Помогите разобраться с RecordSet
13 сообщений из 13, страница 1 из 1
Помогите разобраться с RecordSet
    #32321187
Люди не могу понять в чем проблема. Есть кусок кода:

Set rsListGoods = Server.CreateObject("ADODB.Recordset")
SQLQuery = "exec sp " & Make_Search_Parameters()
Response.Write(SQLQuery)
rsListGoods.CursorType = 3
rsListGoods.Open SQLQuery, strBaseConn

If rsListGoods.RecordCount > 0 Then
rsListGoods.PageSize = 20
rsListGoods.AbsolutePage = Page

Так вот, rsListGoods.RecordCount возвращает -1 .
Хранимая процедура возвращает более 500 записей (проверено).
Так вопрос почему возвращается -1?
...
Рейтинг: 0 / 0
Помогите разобраться с RecordSet
    #32321238
monstrU
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
потому что ты используешь подключение, которое не поддерживает recordcountю это по-моему от блокировки записей зависит. то есть тебе нужно свйоство locktype у recordset проинициализировать
...
Рейтинг: 0 / 0
Помогите разобраться с RecordSet
    #32321249
Использование

rsListGoods.Open SQLQuery, strBaseConn 3,1

что в принципе логично, не приводит ни к какому результату
RecordCount как был -1 так и остался, изменение типа locktype так же без результатов.
...
Рейтинг: 0 / 0
Помогите разобраться с RecordSet
    #32321257
monstrU
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
пишу по памяти
rsListGoods.Open SQLQuery, strBaseConn 3,3,1 - это не поможет ?
...
Рейтинг: 0 / 0
Помогите разобраться с RecordSet
    #32321269
monstrU
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
в MSDN вот такой пример есть, например

' open recordset with data from Publishers table
Set rstPublishers = New ADODB.Recordset
SQLPublishers = "publishers"
rstPublishers.Open SQLPublishers, strCnxn, adOpenStatic, , adCmdTable

intPublisherCount = rstPublishers.RecordCount
...
Рейтинг: 0 / 0
Помогите разобраться с RecordSet
    #32321279
monstrU
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
тем более что проверку на наличие строк в запросе
If rsListGoods.RecordCount > 0 Then
rsListGoods.PageSize = 20
лучше заменить . тут два варианта есть

1. использовать свойства EOF BOF. если они обе равны true то запрос возвратил пустое множество
2. количество обработанных строк можно получить из хранимой процедуры, если написать
select @@rowcount, или возвратить это число через output параметр процедуры
...
Рейтинг: 0 / 0
Помогите разобраться с RecordSet
    #32321543
Дело все в том что все работало, но тогда там стояла SQL запрос, а при подстановки хранимой процедуры (возвращаемые данные идентичны) RecordSet не определяет кол-во записей, а переделывать придется ограмное файло.
...
Рейтинг: 0 / 0
Помогите разобраться с RecordSet
    #32321604
monstrU
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
между прочим exec sp - это же sql запрос. вот было бы
просто sp - тогда другое дело. а в общем можно что - вызывать в качестве запроса sp с параметрами, в качестве commandtype указывать процедуру, и коллекцию параметров в recordset создать нужно.

короче - сделайте так, как написано в примерах msdn
...
Рейтинг: 0 / 0
Помогите разобраться с RecordSet
    #32321688
Сделал, все равно выдает RecordCount = -1. :(
...
Рейтинг: 0 / 0
Помогите разобраться с RecordSet
    #32322315
monstrU
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
кстати, с recordcount еще одна особенность - какой провайдер для баз данных используете ? sqloledb нужно
...
Рейтинг: 0 / 0
Помогите разобраться с RecordSet
    #32323057
Так у меня именно sqloledb и используется.
Причем фишка, если просто наменить строку запроса на Select, а не на выполнение хранимой процедуры, все работает и определяется, но мне нужно именно выполнять хранимую.
...
Рейтинг: 0 / 0
Помогите разобраться с RecordSet
    #32325174
happy-zz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
set nocount on ?
...
Рейтинг: 0 / 0
Помогите разобраться с RecordSet
    #32325955
set nocount on
Естественно включено как и положено.....
...
Рейтинг: 0 / 0
13 сообщений из 13, страница 1 из 1
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Помогите разобраться с RecordSet
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]