RS.RECORDCOUNT
Olá!
Sempre que utlizo o [ô]RS.RecordCount[ô] ele me retorna -1, indiferente se o banco de dados possui ou não o dado procurado. Alguém pode me ajudar?
------------------------------------------------------------------------------------------------------------------------------------------
[ô]VERIFICAR SE O RG Jà ESTà CADASTRADO
[ô]definir tipo de conexão ( no caso abaixo ADODB)
Set CNN = New ADODB.Connection [ô] CONEXÃO COM O ARQUIVO
Set RS = New ADODB.Recordset [ô] CONEXÃO COM A TABELA
[ô]FAZER A CONEXÃO COM O BANCO DE DADOS
SQL = App.Path & [Ô]\BANCO\ATL.mdb[Ô]
CNN.Open [Ô]Provider=Microsoft.Jet.OLEDB.4.0;Data Source=[Ô] & SQL & [Ô];Jet OLEDB:Database Password=;[Ô]
Set RS = CNN.Execute([Ô]SELECT RG FROM ATLETAS WHERE RG LIKE [Ô] & I_RG.Text & [Ô][Ô])
If RS.RecordCount = 0 Then
Else
MsgBox [Ô]O RG [Ô] & I_RG.Text & [Ô] já consta em nosos reigstros![Ô], vbExclamation, [Ô]Erro[Ô]
I_RG.Text = [Ô][Ô]
End If
Set RS = Nothing
Set CNN = Nothing
--------------------------------------------------------------------------------------------------------------------------------
Obrigado.
Sempre que utlizo o [ô]RS.RecordCount[ô] ele me retorna -1, indiferente se o banco de dados possui ou não o dado procurado. Alguém pode me ajudar?
------------------------------------------------------------------------------------------------------------------------------------------
[ô]VERIFICAR SE O RG Jà ESTà CADASTRADO
[ô]definir tipo de conexão ( no caso abaixo ADODB)
Set CNN = New ADODB.Connection [ô] CONEXÃO COM O ARQUIVO
Set RS = New ADODB.Recordset [ô] CONEXÃO COM A TABELA
[ô]FAZER A CONEXÃO COM O BANCO DE DADOS
SQL = App.Path & [Ô]\BANCO\ATL.mdb[Ô]
CNN.Open [Ô]Provider=Microsoft.Jet.OLEDB.4.0;Data Source=[Ô] & SQL & [Ô];Jet OLEDB:Database Password=;[Ô]
Set RS = CNN.Execute([Ô]SELECT RG FROM ATLETAS WHERE RG LIKE [Ô] & I_RG.Text & [Ô][Ô])
If RS.RecordCount = 0 Then
Else
MsgBox [Ô]O RG [Ô] & I_RG.Text & [Ô] já consta em nosos reigstros![Ô], vbExclamation, [Ô]Erro[Ô]
I_RG.Text = [Ô][Ô]
End If
Set RS = Nothing
Set CNN = Nothing
--------------------------------------------------------------------------------------------------------------------------------
Obrigado.
Não verifique pela quantidade retornada pois sempre ocorre este problema. Faça a conferência assim:
If RS.EOF = TRUE Then
MSGBOX([Ô]ESTE RG NÃO ESTà CADASTRADO[Ô])
Else
MsgBox [Ô]O RG [Ô] & I_RG.Text & [Ô] já consta em nosos reigstros![Ô], vbExclamation, [Ô]Erro[Ô]
I_RG.Text = [Ô][Ô]
End If
[ô]VERIFICAR SE O RG Jà ESTà CADASTRADO
[ô]definir tipo de conexão ( no caso abaixo ADODB)
Set CNN = New ADODB.Connection [ô] CONEXÃO COM O ARQUIVO
Set RS = New ADODB.Recordset [ô] CONEXÃO COM A TABELA
[ô]FAZER A CONEXÃO COM O BANCO DE DADOS
SQL = App.Path & [Ô]\BANCO\ATL.mdb[Ô]
CNN.Open [Ô]Provider=Microsoft.Jet.OLEDB.4.0;Data Source=[Ô] & SQL & [Ô];Jet OLEDB:Database Password=;[Ô]
[txt-color=#007100][ô] Inicio da alteracao[/txt-color]
RS.CursorLocation = adUseClient
RS.Open [Ô]SELECT RG FROM ATLETAS WHERE RG LIKE [Ô] & I_RG.Text & [Ô][Ô], con
[txt-color=#007100][ô] Fim da alteracao[/txt-color]
If RS.RecordCount = 0 Then
Else
MsgBox [Ô]O RG [Ô] & I_RG.Text & [Ô] já consta em nosos reigstros![Ô], vbExclamation, [Ô]Erro[Ô]
I_RG.Text = [Ô][Ô]
End If
Set RS = Nothing
Set CNN = Nothing
Se você, por algum motivo, precisar contar, faça assim
rs.MoveLast
iRegistros= rs.RowCount
Tópico encerrado , respostas não são mais permitidas