-Поиск по дневнику

Поиск сообщений в rss_sql_ru_access_programming

 -Подписка по e-mail

 

 -Постоянные читатели

 -Статистика

Статистика LiveInternet.ru: показано количество хитов и посетителей
Создан: 16.03.2006
Записей:
Комментариев:
Написано: 4


Помощь с Recordset

Четверг, 28 Августа 2014 г. 17:54 + в цитатник
Добрый день
помогите разобраться с рекордсетом, потому как столкнулся с проблемой, которую не осилю без сторонней помощи:
есть две таблицы с одинаковыми полями:
таблица - Тест:
Поле1 Поле2 Поле3
1 2 3
2 3 4

таблица - Тест1:
Поле1 Поле2 Поле3
2 3 4
4 4 5
нужно без обращения к имени полей(поскольку название полей заранее не известны) осуществить импорт таблицы Тест1 в таблицу Тест.
Пришел к идее реализации через рекордсет:
+
Set rs = CurrentDb.OpenRecordset("test")
Set rs1 = CurrentDb.OpenRecordset("test1")

For i = 0 To rs.Fields.Count - 1
ks = rs.Fields(i).Name
Debug.Print ks

For y = 0 To rs1.Fields.Count - 1
ks1 = rs1.Fields(y).Name
If ks = ks1 Then GoTo ex1 Else GoTo ex2

ex1:

Do While Not rs1.EOF
rs.AddNew
rs.Fields(i) = rs1.Fields(y)
rs.Update
MsgBox rs.Fields(i)
MsgBox rs1.Fields(y)
rs1.MoveNext
Loop

ex2:
Debug.Print rs1.Fields(y).Name
Next y

Next i

и все было бы хорошо, но только не всегда работает условие If ks = ks1, почему - хз:
цикл i на первом шаге ks = "Поле1", цикл y на первом шаге ks1 = "Поле1" - условие выполняется и в Поле1 добавляются записи 2 и 4, НО! после этого, когда ks = "Поле2" и ks1 = "Поле2" If игнорирует равенство... Почему, я не знаю, и как выйти из ситуации тоже не знаю...Помогите кто чем может)

Базу прицепил

http://www.sql.ru/forum/1113112/pomoshh-s-recordset


 

Добавить комментарий:
Текст комментария: смайлики

Проверка орфографии: (найти ошибки)

Прикрепить картинку:

 Переводить URL в ссылку
 Подписаться на комментарии
 Подписать картинку