RECORDSET DESCONECTADO

USUARIO.EXCLUIDOS 18/05/2004 17:02:19
#25349
Pessoal,
Pretendo implementar em meu sistema um class pra o tratamento do banco de dados, onde eu irei abrir o banco, carregar um recordset e fechar o banco, logo em seguida, pois pretendo deixar o banco o menos tempo aberto possível, evitando assim qualquer problema com quedas de energia e tal.
Agora... quando que carrego o Recordset e logo em seguida eu fecho o banco, ele perde a definição do objecto recordset também, pois acredito que sejam dependêntes e tal.
Alguém sabe como fazer para permitir 'navegar' por meu recordset (movenext, EOF e BOF, AbsolutePosition, etc...) estando ele desconectado?
Obrigado e até mais,
Milton.
USUARIO.EXCLUIDOS 18/05/2004 17:07:28
#25353
Resposta escolhida
dim RS as ADODB.Recordset
set rs = PesquisarDados("Select * from Tabela;")

'Retorna recordset Desconectado
Public Function PesquisarDados(ByVal SQLCommand As String, Optional Desconectar As Boolean = True) As ADODB.Recordset
Static Conn As ADODB.Connection
Dim RS As ADODB.Recordset

On Error GoTo TrataErro

'se precisar criar nova conexao, cria
If Conn Is Nothing Then
Set Conn = New ADODB.Connection
Conn.CursorLocation = adUseClient
Conn.Open m_sConnectionString
End If

'cria nova instancia
Set RS = New ADODB.Recordset
'abre para trabalhar disconectado
RS.Open SQLCommand, Conn, adOpenForwardOnly, adLockBatchOptimistic
'desconecta
Set RS.ActiveConnection = Nothing
'pega referencia
Set PesquisarDados = RS
TrataErro:
'libera referencia
Set RS = Nothing
If Desconectar Then
'fecha conn
If Not Conn Is Nothing Then
Conn.Close
Set Conn = Nothing
End If
End If
End Function


USUARIO.EXCLUIDOS 18/05/2004 21:34:24
#25385
se este codigo resolver seu problema, por favor encerre este topico
USUARIO.EXCLUIDOS 18/05/2004 22:20:59
#25388
RS.Open SQLCommand, Conn, adOpenForwardOnly, adLockBatchOptimistic

mas está no meio do código isso
Tópico encerrado , respostas não são mais permitidas