Foros del Web » Programación para mayores de 30 ;) » Programación General » Visual Basic clásico »

Escribir registros en la base de datos y validar

Estas en el tema de Escribir registros en la base de datos y validar en el foro de Visual Basic clásico en Foros del Web. Hola gente, como estan? Estoy recien empezando en el mundo de Vb 6 y queria saber como puedo hacer para que cuando escriba en la ...
  #1 (permalink)  
Antiguo 01/05/2013, 19:06
Avatar de elvaleehdj  
Fecha de Ingreso: julio-2011
Mensajes: 33
Antigüedad: 12 años, 9 meses
Puntos: 0
Escribir registros en la base de datos y validar

Hola gente, como estan?

Estoy recien empezando en el mundo de Vb 6 y queria saber como puedo hacer para que cuando escriba en la base de datos acces (2007), antes compruebe si existe algun registro con el mismo nombre..

Acá dejo mi codigo..
Código:
Option Explicit

Private Sub Command1_Click()
Set Data1 = New ADODB.Connection
    With Data1
        .Provider = "Microsoft.ACE.OLEDB.12.0"
        .ConnectionString = "Data Source = " & App.Path & "\agenda.accdb"
        .Open
    End With
    
'-----------------------------------------------------------------------------------------------------------------------------

If nombreagr.Text = "" Then MsgBox "Ingrese usuario", vbInformation, "ERROR": nombreagr.SetFocus: Exit Sub
If passagr.Text = "" Then MsgBox "Ingrese la contraseña", vbInformation, "ERROR": passagr.SetFocus: Exit Sub

'-----------------------------------------------------------------------------------------------------------------------------

Data1.Execute "Insert into Usuarios(Id, Pass) Values('" & nombreagr.Text & "', '" & passagr.Text & "')"

End If
End Sub
  #2 (permalink)  
Antiguo 01/06/2013, 00:20
 
Fecha de Ingreso: abril-2005
Ubicación: Piura - Perú
Mensajes: 189
Antigüedad: 19 años
Puntos: 0
Respuesta: Escribir registros en la base de datos y validar

Pues, para darte una idea, primero realizas una consulta que revise si el nombreagr.text ya se encuentra en la DB, algo asi


Primero declara en laparte superior de la ventana, arriba de todos los sub's lo siguiente

Código vb:
Ver original
  1. Dim cn As New ADODB.Connection
  2. Dim rs As New ADODB.Recordset
  3. dim rs2 as new adodb.recordset

Luego en el evento donde quieras puede ser en un command va lo siguiente

Código vb:
Ver original
  1. Private Sub Command2_Click()
  2. Set cn = New ADODB.Connection
  3.     With cn
  4.         .Provider = "Microsoft.ACE.OLEDB.12.0"
  5.         .ConnectionString = "Data Source = " & App.Path & "\agenda.accdb"
  6.         .Open
  7.     End With
  8.  
  9.  
  10. Set rs = New Recordset
  11. rs.Open "select id from usuarios where id=" & nombreagr.text & "", cn, adOpenDynamic, adLockOptimistic
  12.  If rs.RecordCount <> 0 Then
  13.   ' aqui va lo que quieres que haga si es que existe el registro
  14.  msgbox "el registro ya existe por favor intente con otro"
  15.   end
  16.  else
  17.   ' aqui va el codigo para guardar en la DB osea seria otro rs2, en donde haces el insert.
  18. Set rs2 = New Recordset
  19.  rs2.Open "Insert.... consulta de insert", cn, adOpenDynamic, adLockOptimistic
  20.  end if
  21.  
  22. End Sub

Etiquetas: registros
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 19:04.