Almacenamiento en visual basic 6.0

Buen día, tengo un problema, quiero insertar un dato en una base de datos de access 2000, pero necesito que ese dato no este repetido en mi base datos.
¿Cómo compara el dato que escribo con los datos ya existentes?
La conexión la ago con ado.
Otra pregunta
¿Cómo soluciono que un dato autonumérico no me tire el sistema cuando en la búsqueda del inputbox le tecleo un dato no mumerico?
De antemano gracias.
Respuesta
1
Para restringir los datos repetidos se puede activar la opción de "no repetidos" en el campo, en el diseño de la tabla en access.
Pero por otra parte, si queremos verificar que no exista un dato antes de insertar se puede hacer un operación de este tipo
function existe(dato as string, tabla as string) as boolean
dim rs as new adodb.recordset
Dim aux as boolean
rs.open "select count(*) from " & tabla & " where codigo='" & dato & "'", cnn
aux=false
ir rs.fields(0)<>0 then
aux=true
endif
existe=aux
end function
Para esta función asumo la existencia de una conexión ADO llamada cnn, y que estoy buscando en una tabla pasado el argumento como nombre. Esta es solo una idea y tiene que ajustarla a sus necesidades.
2. Hay una forma en la cual en VB se puede "saltar" un error. Se debe de colocar la instrucción
ON ERROR NEXT
Esto hace que se ejecute la siguiente línea después del error (cualquier runtime error) hay que tener cuidado, ya que podemos pasar un error que después afecte el desarrollo de nuestro sistema.
Julius
Mira gracias por la ayuda, se soluciono el problema, pero quisiera ver si me hechas la mano con otro, no se como emitir un reporte de vale de reguardo, as de cuenta que esta dirigido a uno sola persona.
¿Cómo meto los datos de diferentes tablas a un reporte y como hago el reporte?
Ya lo tengo pero lo ago en una forma llamando cada uno de los campos.
De antemano gracias
Lo mejor es hacer una consulta (query) en access. Donde se coloquen los campos de las distintas tablas. Otra forma es creando un recordset que muestre la información. Por ejemplo
rs.open "select a.nombre, a.direccion, b.nombrepais from clientes a, paises b where a.codpais=b.codpais",cnn
Esta es una consulta que agrupa información de dos tablas distintas con un campo común (codpais). Este tipo de consultas son relacionales.
Julius

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas