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

buscar un registro

Estas en el tema de buscar un registro en el foro de Visual Basic clásico en Foros del Web. hola, tengo un problema con la busqueda de un registro, me arroja un erro que dice: "ERROR 3464 EN TIEMPO DE EJECUCION, NO COICIDEN LOS ...
  #1 (permalink)  
Antiguo 05/02/2009, 16:06
 
Fecha de Ingreso: marzo-2006
Mensajes: 78
Antigüedad: 18 años, 2 meses
Puntos: 0
buscar un registro

hola, tengo un problema con la busqueda de un registro, me arroja un erro que dice:
"ERROR 3464 EN TIEMPO DE EJECUCION, NO COICIDEN LOS TIPOS DE DATOS EN LA EXPRESION DE CRITERIOS"

tengo una tabla llamada persona cuyos campos son id, nombre y apellido, las dos ultimas son campos tipo texto y el id es autoincrementable, en access

pero si cambio en access el id a texto, me busca los registros con este codigo:

Sub buscar()
Dim sql As String
Dim cons_per As Recordset
sql = "select * from persona where id_elemento='" + Text4 + "'"
Set cons_per = base.OpenRecordset(sql, dbOpenDynaset)
If cons_per.RecordCount <> 0 Then
Text1 = cons_per("nombre")
Text2 = cons_per("apellido")
End If
End Sub

alguna sugerencia, no puedo cambiar el id a texto lo necesito como autoincremento desde ya gracias aaahhhh y el acceso a datos es atraves de DAO
  #2 (permalink)  
Antiguo 05/02/2009, 17:55
 
Fecha de Ingreso: octubre-2008
Mensajes: 36
Antigüedad: 15 años, 6 meses
Puntos: 0
Respuesta: buscar un registro

Cita:
Iniciado por pilar_tellez Ver Mensaje
hola, tengo un problema con la busqueda de un registro, me arroja un erro que dice:
"ERROR 3464 EN TIEMPO DE EJECUCION, NO COICIDEN LOS TIPOS DE DATOS EN LA EXPRESION DE CRITERIOS"

tengo una tabla llamada persona cuyos campos son id, nombre y apellido, las dos ultimas son campos tipo texto y el id es autoincrementable, en access

pero si cambio en access el id a texto, me busca los registros con este codigo:

Sub buscar()
Dim sql As String
Dim cons_per As Recordset
sql = "select * from persona where id_elemento='" + Text4 + "'"
Set cons_per = base.OpenRecordset(sql, dbOpenDynaset)
If cons_per.RecordCount <> 0 Then
Text1 = cons_per("nombre")
Text2 = cons_per("apellido")
End If
End Sub

alguna sugerencia, no puedo cambiar el id a texto lo necesito como autoincremento desde ya gracias aaahhhh y el acceso a datos es atraves de DAO

Hola como estas yo creo que deberia de bastar con quitar las comillas simples que pones en el text4, estas comillas le indican al programa que es texto y tu necesitas numeros.

Espero te sirva y estar en lo correcto

Que tengas una tarde excelente
  #3 (permalink)  
Antiguo 05/02/2009, 18:00
Avatar de seba123neo  
Fecha de Ingreso: febrero-2007
Ubicación: Esperanza, Santa Fe
Mensajes: 1.046
Antigüedad: 17 años, 2 meses
Puntos: 19
Respuesta: buscar un registro

Hola, si es un id autoincrementable fijate que sea un entero y no un string..proba la consulta asi:

Código:
sql = "select * from persona where id_elemento=" & Text4.Text
eso es si el id es numerico...

saludos.
__________________
" Todos Somos Ignorantes; lo que pasa es que no todos ignoramos las mismas cosas " - Albert Einstein
  #4 (permalink)  
Antiguo 05/02/2009, 20:18
 
Fecha de Ingreso: marzo-2006
Mensajes: 78
Antigüedad: 18 años, 2 meses
Puntos: 0
Respuesta: buscar un registro

muchas gracias por su ayuda me resulto la busqueda colocando en la consulta:

sql= "select * from personas where id_elemento =" & text4&"

adios....
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 08:48.