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

busqueda de un registro que tiene clave compuesta

Estas en el tema de busqueda de un registro que tiene clave compuesta en el foro de Visual Basic clásico en Foros del Web. Hola necesito ayuda por favor, tengo una base de datos en access que tiene 3 tablas: una que se llama COMUNA que almacena las comunas ...
  #1 (permalink)  
Antiguo 10/02/2009, 09:13
 
Fecha de Ingreso: marzo-2006
Mensajes: 78
Antigüedad: 18 años, 2 meses
Puntos: 0
busqueda de un registro que tiene clave compuesta

Hola necesito ayuda por favor, tengo una base de datos en access que tiene 3 tablas: una que se llama COMUNA que almacena las comunas cuyos campos son id_comuna(automunerico) y nom_comuna(texto); la otra tabla que se llama TIPO que almacena que clase de empresa es (si es sucursal o casa matriz) y cuyos campos son id_tipo(autonumerico) y nom_tipo(texto) y por ultimo tengo la tabla EMPRESA que tiene como clave el id_empresa(texto), id_comuna(numero) y id_tipo(numero), estos tres campos.

ahora en visual basic o mejor dicho en un formulario tengo que ingresar informacion de la empresa, pero quiero validar que al ingresar estos tres campos no ingrese algo repetido pa que no se caiga mi programa, donde hice una consulta sql en access y luego la pege en el codigo visual, pero me arroja un error que dice:

error '3085' en tiempo de ejecucion la funcion 'empresa.id_tipo where' no esta definida en la expresion

y este es el codigo que utilizo para buscar dicho registro:

Sub existencia()
Dim sql_exis As String
Dim cons_exis As Recordset
sql_exis = "SELECT * FROM tipo INNER JOIN (comuna INNER JOIN empresa ON comuna.id_comuna = empresa.id_comuna) ON tipo.id_tipo = empresa.id_tipo"
sql_exis = sql_exis + "WHERE (((empresa.id_comuna)=" & Text2 & ") AND ((empresa.id_tipo)=" & Text3 & ") AND ((empresa.rut_emp)='" + Text1 + "'));"
Set cons_exis = base.OpenRecordset(sql_exis, dbOpenDynaset)
If cons_exis.RecordCount <> 0 Then
MsgBox "HOLA"
Else
MsgBox "REGISTRO EXISTE"
End If
End Sub


desde ya agradesco a la persona que me pueda aclarar porq ocurre ese error.
  #2 (permalink)  
Antiguo 10/02/2009, 10:25
Avatar de ginitofl  
Fecha de Ingreso: diciembre-2006
Ubicación: Lima Perú
Mensajes: 349
Antigüedad: 17 años, 5 meses
Puntos: 22
Respuesta: busqueda de un registro que tiene clave compuesta

si lo que quieres es averiguar que una empresa esta ya registrado en la tabla empresas ya no es necesario que hagas el inner join simplemente has tu consulta en la tabla empresas por que ahi tienes guardado el id_comuna, id_tipo y el rut_emp.

Saludos.
  #3 (permalink)  
Antiguo 10/02/2009, 13:38
 
Fecha de Ingreso: marzo-2006
Mensajes: 78
Antigüedad: 18 años, 2 meses
Puntos: 0
Respuesta: busqueda de un registro que tiene clave compuesta

hola, gracias por la sugerencia, hice una consulta sin el INNER JOIN y me busco el registro y me quedo la consulta asi:

sql_exis="select * from empresa where id_comuna=" &text2&" and id_tipo=" &text3&" and rut_emp=' "+text1+" ' "

y asi me busco el registro..
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 11:54.