powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / ADO.Command .Определить число записей в запросе через , как ?
14 сообщений из 14, страница 1 из 1
ADO.Command .Определить число записей в запросе через , как ?
    #32545776
Фотография # Darth Vader #
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Столкнулся с такой проблемой.
ADO / VB6
Для выполнения параметрических запросов использую объект Command ADO.Но вот как определить число записей которое возвращается командой?

Через RecordSet ясно, movelast recordcount ,а вот как поступить если работаем с command?
...
Рейтинг: 0 / 0
ADO.Command .Определить число записей в запросе через , как ?
    #32545925
boevik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Command возвращает recordset.
После возвращения recordset, проверяй сколько записей в recordset.

--------------------------------------------------
Никогда не говори никогда
...
Рейтинг: 0 / 0
ADO.Command .Определить число записей в запросе через , как ?
    #32545928
Фотография # Darth Vader #
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Покажи ка пожалуйста. Как происходит возврат рекордсета?
...
Рейтинг: 0 / 0
ADO.Command .Определить число записей в запросе через , как ?
    #32545942
Фотография DIKI
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dim cmd As ADODB.Command
Set cmd = New ADODB.Command
With cmd
.ActiveConnection = oUser.con
.CommandText = "STAT_NEWS"
.CommandType = adCmdStoredProc
.Parameters.Refresh

.Parameters.Item("@BEGIN_DATE").Value = DTPicker1.Value
.Parameters.Item("@END_DATE").Value = DTPicker2.Value
Set rs = .Execute
end with
...
Рейтинг: 0 / 0
ADO.Command .Определить число записей в запросе через , как ?
    #32545981
Фотография # Darth Vader #
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Спасибо.

Да я знаю что методом Execute можно данные в рекордсет пихнуть!

Вопрос не в этом, можно ли обойтись здесь без создания отдельного рекордсета?
...
Рейтинг: 0 / 0
ADO.Command .Определить число записей в запросе через , как ?
    #32546004
boevik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
EternalНо вот как определить число записей которое возвращается командой?


Eternal
можно ли обойтись здесь без создания отдельного рекордсета?
Я не понял, так Command возвращает recordset или не возвращает?
Если Command возвращает записи, так куда он возвращает их?

--------------------------------------------------
Никогда не говори никогда
...
Рейтинг: 0 / 0
ADO.Command .Определить число записей в запросе через , как ?
    #32546031
Фотография # Darth Vader #
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 boevik

Смотри.

У меня коннекш к SQL SERVER все проходит на ура.

Создаю ADO.Command и выполняю ее используя метод Execute и отображаю данные в гриде.

Set DataGrid2.DataSource = cmdV.Execute

В итоге в гриде вижу результат запроса (ХП короче,но не важно)

Так вот мне нужно вывести количество записей полученных в результате выполнения ХП.

Ясно что можно сделать так

dim rs as ADO.RecordSet

set rs=new ADO.RecordSet
set rs=cmdV.execute
kolvo=rs.recordcount

Но как без создания рекордсета подсчитать кол-во записей?
...
Рейтинг: 0 / 0
ADO.Command .Определить число записей в запросе через , как ?
    #32546038
boevik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
А нельзя проверить сколько строк в DataGridе?

--------------------------------------------------
Никогда не говори никогда
...
Рейтинг: 0 / 0
ADO.Command .Определить число записей в запросе через , как ?
    #32546051
boevik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Есть еще вариант, вернуть значение через параметр процедуры.
--------------------------------------------------
Никогда не говори никогда
...
Рейтинг: 0 / 0
ADO.Command .Определить число записей в запросе через , как ?
    #32546089
Фотография # Darth Vader #
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Тоже дело , через возврат параметра ХП!

Как используя ХП вернуть кол-во записей?
...
Рейтинг: 0 / 0
ADO.Command .Определить число записей в запросе через , как ?
    #32546123
boevik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Примерно так,
в коде VB, определяешь параметр для return
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
    'create return value
    Set prm = cmd.CreateParameter("RETURN_VALUE", adInteger, adParamReturnValue)
    cmd.Parameters.Append prm
    Set prm = Nothing
....
    Set RunSP = cmd.Execute()
    ReturnValue = cmd.Parameters( 0 )


В stored procedure
Код: plaintext
1.
2.
select ....
return @@rowcount
@@rowcount - возвращает кол-во записей выбранных последним statement.

--------------------------------------------------
Никогда не говори никогда
...
Рейтинг: 0 / 0
ADO.Command .Определить число записей в запросе через , как ?
    #32546151
Фотография # Darth Vader #
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Спасибо!
Смотрим как будет действовать.
...
Рейтинг: 0 / 0
ADO.Command .Определить число записей в запросе через , как ?
    #32546290
Фотография # Darth Vader #
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Все заработало.Спасибо боевику!
...
Рейтинг: 0 / 0
ADO.Command .Определить число записей в запросе через , как ?
    #32546634
Processor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Execute Method (ADO Command)
Executes the query, SQL statement, or stored procedure specified in the CommandText or CommandStream property.

Syntax
For a Recordset-returning Command:
Set recordset = command.Execute( RecordsAffected, Parameters, Options )

For a non–recordset-returning Command:
command.Execute RecordsAffected, Parameters, Options

Parameters
RecordsAffected Optional. A Long variable to which the provider returns the number of records that the operation affected. The RecordsAffected parameter applies only for action queries or stored procedures. RecordsAffected does not return the number of records returned by a result-returning query or stored procedure. To obtain this information, use the RecordCount property
...
Рейтинг: 0 / 0
14 сообщений из 14, страница 1 из 1
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / ADO.Command .Определить число записей в запросе через , как ?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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