2013-09-11 3 views
1

Im пытается получить строки из столбцов в наборе записей, а затем вставить их в таблицу простой и простой.EOF возвращает true, даже если у меня есть заполненный набор записей в первом pos в ADO

Набор записей заполняется, и я использовал .MoveFirst, чтобы начать в начале Р.С., все же я получаю EOF правда в самом начале, и выпрыгивает из дел в то время как ..

У меня есть аналогичные функции но это по какой-то причине не подействует.

Я не могу понять, почему ... или как это исправить. Anny insight приветствуется!

текущий код ~

Public Function makeSäljare() 
'Create rs 
Dim rsData As ADODB.Recordset 
Set rsData = New ADODB.Recordset 
Dim sql As String 

'Select what should be included in the rs. 
rsData.Open "SELECT Forhandler, Selger FROM data", _ 
CurrentProject.Connection, adOpenDynamic, adLockOptimistic 
rsData.MoveFirst 


MsgBox rsData.GetString 

'Manipulate each row of the result column. 
Do While Not rsData.EOF 


sql = "INSERT INTO säljare (Partner_Namn, Namn) VALUES ('" & rsData!forhandler & "','" & rsData!Selger & "');" 
MsgBox sql 
'DoCmd.SetWarnings (False) 
DoCmd.RunSQL (sql) 
'DoCmd.SetWarnings (True) 


rsData.MoveNext 
'If rsData.EOF Then Exit Do 

Loop 

rsData.Close 

End Function 

Он выскакивает на Do While Not rsData.EOF ..

ответ

1

GetString оставляет записей в EOF. MoveFirst снова перед Do While Not rsData.EOF

rsData.MoveFirst 
MsgBox rsData.GetString 
rsData.MoveFirst ' <-- add this 
'Manipulate each row of the result column. 
Do While Not rsData.EOF 
+0

Спасибо :) woorks отлично сейчас. – SomeRandomName

0

Я не пытался код, но это логически означает, что набор записей пуст. Внимательно проверьте, правильно ли выполняется запрос, выполняемый на db.

В Access, использование DAO вместо ADO и попробовать это:

Set db = CurrentDb 
set rsData = db.OpenRecordset("SELECT Forhandler, Selger FROM data", dbOpenDynaset) 
+1

Это была проблема HansUp Упоминается, когда я проверить, если у меня есть что-то в моих RS с помощью метода .getString он помещает RS в EOF после я называю .MoveFirst. Глупая ошибка с моей стороны, хе-хе, спасибо за вмену! – SomeRandomName

Смежные вопросы