powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Объеденение n Recordset-ов
10 сообщений из 10, страница 1 из 1
Объеденение n Recordset-ов
    #35829165
Nitrolis
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Всем привет)
Вопрос крайне простой, надеюсь ответ тоже... есть n совершенно одинаковых Recordset-ов (rs1, rs2... rsn), у которых много Fields. Необходимо их объединить в один, той же структуры. Как это оптимально можно сделать?
...
Рейтинг: 0 / 0
Объеденение n Recordset-ов
    #35829260
Grayscale
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
никак... рекордсеты, можете представить себе как указатели на таблицы с состоянием... Если нужно объединить данные стройте соответствующий запрос
...
Рейтинг: 0 / 0
Объеденение n Recordset-ов
    #35829279
Nitrolis
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Спасибо за ответ...
может есть способ перебирая строки в rs1...n добавлять эти строки в resultRS?
...
Рейтинг: 0 / 0
Объеденение n Recordset-ов
    #35829710
Grayscale
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Смотрите recordset.addnew, если рекордсет привфязаный повлияет на источник строк. В любом случае решение выбрано неверное... приведите задачу
...
Рейтинг: 0 / 0
Объеденение n Recordset-ов
    #35829922
AndrF
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Можно создать отвязанный Recordset и запихнуть данные в него...
...
Рейтинг: 0 / 0
Объеденение n Recordset-ов
    #35829989
AndrF
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
NitrolisСпасибо за ответ...
может есть способ перебирая строки в rs1...n добавлять эти строки в resultRS?

Как-то так:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
...
MyAddRecords rs1, resultRS
MyAddRecords rs2, resultRS
...
MyAddRecords rsn, resultRS
...
...

Public Function MyAddRecords(rs As ADODB.Recordset, rd As ADODB.Recordset)
    Dim f As Adodb.Field

    Do Until rs.Eof
        rd.AddNew
        For Each f In rd.Fields
            f = rs(f.Name)
        Next f
        rd.Update
        rs.MoveNext
    Loop
End Function
...
Рейтинг: 0 / 0
Объеденение n Recordset-ов
    #35830034
Nitrolis
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Есть несколько серверов, на каждом выполняется ХП, которая формирует данные. Результат ХП необходимо объединить в одну временную(!) таблицу на любом из серверов, либо в RS на клиенте, где должен быть результирующий набор данных...
Конструкция
INSERT INTO #table(...)
EXEC LinkedSRV1..SP_PROC @..@...@>>>
INSERT INTO #table(...)
EXEC LinkedSRVn..SP_PROC @..@...@>>>
Select * from #table
результата не дает... много тонкостей, настроек линков, в итоге много проблем... предположил, что легко можно через Recordset получить данные и объеденить...
...
Рейтинг: 0 / 0
Объеденение n Recordset-ов
    #35831868
slope
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
вариант с представлениями не рассматривали? сложновато но будет красиво.
объединить в том виде в котором вы предлогаете не знаю можно ли, но если выводите данные например в MSFlexGrid то методом MSFlexGrid.AddItem можно легко это сделать.
...
Рейтинг: 0 / 0
Объеденение n Recordset-ов
    #35852973
Nitrolis
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
AndrF,
Спасибо, всё получилось... с небольшими уточнениями Вашего примера...

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
MyAddRecords rs1, resultRS
MyAddRecords rs2, resultRS
...
MyAddRecords rsn, resultRS
...
...

Public Function MyAddRecords(rs As ADODB.Recordset, rd As ADODB.Recordset)
    Dim f As Adodb.Field
    rs.MoveFirst 
    Do Until rs.Eof
        rd.AddNew
        For Each f In rd.Fields
            f = rs.Fields(f.Name)
        Next f
        rd.Update
        rs.MoveNext
    Loop
End Function
...
Рейтинг: 0 / 0
Объеденение n Recordset-ов
    #35853080
Фотография Antonariy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rd.Update не обязательно.
...
Рейтинг: 0 / 0
10 сообщений из 10, страница 1 из 1
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Объеденение n Recordset-ов
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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