No duplicar registros en una BD de access con VB6

Eh desarrollado una aplicación para acceder a una BD con VB6 ya se pueden guardar registros pero lo que quiero es que si capturo el registro 1oo en la columna de folio que es la primer columna ya no me deje volver a introducir ese folio 1oo en la siguiente fila, evitar repetir ese numero.(Todo desde VB6)
Me han dicho que lo haga seleccionando la propiedad de duplicados en ACCESS pero yo no quiero de esas forma, quiero que me aparezca un MSGBOX que me diga que ya esta registrado ese dato AL DARLE GUARDAR.

1 Respuesta

Respuesta
1
Como estas, lo que podes hacer,
es capturar un error, en caso de que se de este,
informas que ese dato ya esta registrado ;)
Si ya esta en la base, pero hay ocasiones que por error de dedo pueden capturar el mismo numero, lo hice poniendo la propiedad de duplicados en access para ese campo en especial y si efectivamente me marca el error al darle guardar al front de captura de visual basic, en ese momento le puse en el (botón guardar) el error se viera con un msgbox "el dato capturado ya existe", pero al darle aceptar me vuelve `a aparecer el error de access, ¿no hay otra forma? Si quieres te puedo mandar mi archivo para que lo visualices.
Saludos
También podrías probar revisando si ese dato que vas a ingresar ya esta en la bd, en caso de que ya exista, lo obligas a cambiarlo...
¿Me vas siguiendo?
Hola buenos días,
no quisiera obligar que cambie, de hecho ya en access no tengo datos, solo lo voy a usar para datos nuevos, por ejemplo capturo el numero 1 y el siguiente numero que se capture si por error le ponen otra vez el uno, entonces que avise con un msgbox. Que el uno ya existe
Espero me puedas ayudar
Saludos
¿Cómo estas?
Mira lo que yo te recomiendo es que utilices el control data, es lo más simple para trabajar con access.
Usando el control data seria algo así:
Dim Numero as integer
Numero = textbox1.text
With ControlData
      .RecordSource = "Select * from MiTabla where numero=" & Numero
      .Refresh
      If .Recordset.EOF = true then
            msgbox "Ese dato ya fue ingresado"
      Else
             .Recordset.AddNew
             .Recordset("numero") = Numero
             .Recordset.Update
      End If
End With
Proba con esto capo que seguro lo resolves ;)

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas