powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Как скопировать RecordSet целиком?
7 сообщений из 7, страница 1 из 1
Как скопировать RecordSet целиком?
    #33892067
Molasar
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Добрый день!

Загнал таблицу в рекордсет. Пошагово его просматриваю.
При совпадении определенного условия нужно скопировать тукущую запись (со всеми полями) в другой рекордсет.

Как одной командой копировать тек. РС в другой РС?

Спасибо
...
Рейтинг: 0 / 0
Как скопировать RecordSet целиком?
    #33892296
Melkiades
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вероятно, rs.AddNew.
...
Рейтинг: 0 / 0
Как скопировать RecordSet целиком?
    #33893834
Фотография Antonariy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А может проще одним запросом? update tbl1 set fld1 = tbl2.fld2 from tbl2 where ...
...
Рейтинг: 0 / 0
Как скопировать RecordSet целиком?
    #33893897
Melkiades
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Естественно, проще. Но мы же не знаем, какие у Molasar-а задачи.
...
Рейтинг: 0 / 0
Как скопировать RecordSet целиком?
    #33894059
Фотография Worobjoff
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А вам не подойдет клон рекордсета?
С фильтром по этому определенному условию.
...
Рейтинг: 0 / 0
Как скопировать RecordSet целиком?
    #33896035
blinow
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
По поводу клона, может я , что-то не так делал но клон получался всегда только как ссылка на рекордсет, т.е. изменения в рекордсете отражались в клоне и наоборот
...
Рейтинг: 0 / 0
Как скопировать RecordSet целиком?
    #33896047
blinow
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Если rst такой же то просто в цикле

For i=0 To rstI.Fields.Count-1
rstC.Fields(i).Value=rstI.Fields(i).Value
Next i

Собственно и все, но лучше такие вещи выполнять запросом.

Если Вам нужна просто копия, ну мало ли зачем.

Откройте rstC без соединения.

Dim rstI as New ADODB.Recordset
Dim rstC as New ADODB.Recordset

rstI.Open "Select...",conn, ... , ...

For i = 0 To rstI.Fields.Count-1
rstC.Fields.Append rstI.Fields(i).Name, rstI.Fields(i).Type, rstI.Fields(i).DefinedSize
Next i

rstC.Open
rstC.AddNew

For i=0 To rstI.Fields.Count-1
rstC.Fields(i).Value=rstI.Fields(i).Value
Next i
...
Рейтинг: 0 / 0
7 сообщений из 7, страница 1 из 1
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Как скопировать RecordSet целиком?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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