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

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

--------------------------------------------------
Никогда не говори никогда
...
Рейтинг: 0 / 0
03.06.2004, 10:07
    #32545928
# Darth Vader #
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ADO.Command .Определить число записей в запросе через , как ?
Покажи ка пожалуйста. Как происходит возврат рекордсета?
...
Рейтинг: 0 / 0
03.06.2004, 10:13
    #32545942
DIKI
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ADO.Command .Определить число записей в запросе через , как ?
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
03.06.2004, 10:29
    #32545981
# Darth Vader #
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ADO.Command .Определить число записей в запросе через , как ?
Спасибо.

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

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


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

--------------------------------------------------
Никогда не говори никогда
...
Рейтинг: 0 / 0
03.06.2004, 10:46
    #32546031
# Darth Vader #
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ADO.Command .Определить число записей в запросе через , как ?
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
03.06.2004, 10:49
    #32546038
boevik
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ADO.Command .Определить число записей в запросе через , как ?
А нельзя проверить сколько строк в DataGridе?

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

Как используя ХП вернуть кол-во записей?
...
Рейтинг: 0 / 0
03.06.2004, 11:17
    #32546123
boevik
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ADO.Command .Определить число записей в запросе через , как ?
Примерно так,
в коде 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
03.06.2004, 11:27
    #32546151
# Darth Vader #
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ADO.Command .Определить число записей в запросе через , как ?
Спасибо!
Смотрим как будет действовать.
...
Рейтинг: 0 / 0
03.06.2004, 12:10
    #32546290
# Darth Vader #
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ADO.Command .Определить число записей в запросе через , как ?
Все заработало.Спасибо боевику!
...
Рейтинг: 0 / 0
03.06.2004, 14:11
    #32546634
Processor
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ADO.Command .Определить число записей в запросе через , как ?
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
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / ADO.Command .Определить число записей в запросе через , как ? / 14 сообщений из 14, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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