Если это VB6 и ADO 2.x - порылся в старых исходниках 2004г.:
Public Function CloneADOrecordset(ByRef rs_sour As Variant, _
ByRef rs_dest As Variant, _
Optional ByVal cursor_type As ADODB.CursorTypeEnum = adOpenStatic, _
Optional ByVal lock_type As ADODB.LockTypeEnum = adLockPessimistic) As String
' rs_* - ADODB.Recordset
' Клонирование структуры и данных ADODB.Recordset'a
On Error GoTo lErr
' clear rs_dest fields
While rs_dest.Fields.Count > 0
rs_dest.Fields.Delete 0
Wend
Dim fld_count As Long, row_count As Long
Dim i As Long
' Fields
fld_count = rs_sour.Fields.Count
For i = 0 To fld_count - 1
With rs_sour.Fields(i)
rs_dest.Fields.Append .Name, .Type, .DefinedSize, .Attributes
End With
Next
' Rows
row_count = rs_sour.RecordCount
rs_dest.Open , , cursor_type, lock_type
While Not rs_sour.EOF
rs_dest.AddNew
For i = 0 To fld_count - 1
rs_dest.Fields(i).Value = rs_sour.Fields(i).Value
Next
rs_dest.Update
rs_sour.MoveNext
Wend
' BEGIN: =CHV, 17.07.2005
If rs_dest.RecordCount > 0 Then
rs_dest.MoveFirst
End If
' END: =CHV, 17.07.2005
CloneADOrecordset = ""
Exit Function
lErr:
CloneADOrecordset = Hex$(Err.Number) & ": " & Err.Description
End Function
Yours sincerely,
Valery V. Chesnokov
<A href=http://hragency.fl34.ru/>кадровая</A> <A href=http://volgacv.fl34.ru/>программа</A>, <A href=http://shop.fl34.ru/>магазин</A>, <A href=http://forex.fl34.ru/>MQL индикаторы</A>
Данное сообщение получено с сайта GotDotNet.RU
Последний раз редактировалось 28 June 2008 22:51
|