CHECAR SE O REGISTRO EXISTE
Boa-noite. Gostaria de saber se é possÃvel e como fazer para eu chagar via adodb, se ao adicionar um novo registro ele checar se o mesmo já existe.
tente isto:
RS.MoveFirst
RS.Find "Campo = ' Valor ' "
If RS.EOF Then
---- AQUI O CÓ“DIGO DE INCLUSÃO DE REGISTRO----
Else
Msgbox "REGISTRO JÃ Â EXISTENTE..."
-----SAIA DA ROTINA DE INCLUSÃO-----
End If
Se vc quiser algo mais complexo, troque o método Find pelo Filter...
Espero ter ajudado...
Um Abraço.
RS.MoveFirst
RS.Find "Campo = ' Valor ' "
If RS.EOF Then
---- AQUI O CÓ“DIGO DE INCLUSÃO DE REGISTRO----
Else
Msgbox "REGISTRO JÃ Â EXISTENTE..."
-----SAIA DA ROTINA DE INCLUSÃO-----
End If
Se vc quiser algo mais complexo, troque o método Find pelo Filter...
Espero ter ajudado...
Um Abraço.
Faça uma consulta antes de inserir o registro.
sql = "SELECT * FROM tabela WHERE campo = " & varNum & "
RS.Open sql, conexao
If RS.BOF = True Then
Msgbox "Registro Não Existe"
Else
Msgbox "Registro Existe"
End If
RS.Close
sql = "SELECT * FROM tabela WHERE campo = " & varNum & "
RS.Open sql, conexao
If RS.BOF = True Then
Msgbox "Registro Não Existe"
Else
Msgbox "Registro Existe"
End If
RS.Close
Por exemplo Marcos, você vai adicionar um valor para o campo e não pode ter outro registro com o valor igual:
Primeiro você faz uma consulta SQL para tentar encontrar o registro igual ao adicionado
Primeiro você faz uma consulta SQL para tentar encontrar o registro igual ao adicionado
rs.recordset="select * from TABELA where campo =" & valor 'Caso o campo seja númerico
rs.refresh
if rs.recordcount>0 then 'Se a contagem de registros selecionados na tabela for > 0
msgbox"O código já existe"
end sub
else
rs.fields("campo")=valor
rs.update
end if
Obrigado à  todos.
Marcos no meu programa estou usando diferente, acho mais pratico e melhor, por que funciona tb muito bem na hora de salvar e ele não deixar salvar.
No access escolha na estrutura a opcao (duplicacao nao autorizada).
e na sub para inserir e salvar o registro use assim:
Sub Inserir()
On Error GoTo Trataclone
xrcl.AddNew
xrcl!clinome = xNome
xrcl.Update
Trataclone:
If Err <> "0" Then
If Err = "-2147217887" Then
MsgBox "O cliente já se encontra cadastrado.", vbInformation, "PROGERCOM"
Call Abrexrcl
Else
MsgBox Err
End If
End If
End Sub
Tópico encerrado , respostas não são mais permitidas