Necesito iluminados de Microsoft Access!

Pues os comento, tengo 2 tablas:
tabla_marca que tiene marcaid y marca_nombre (ambas clave primaria)
tabla_modelo que tiene modelo_id, modelo_nombre (ambos clave primaria) y modelo_marcaid (foránea de marcaid)

Quiero crear un formulario en el cual al seleccionar en un combo de marca el ID de la marca, me rellene el combo de modelo con los modelos de esa marca, y no tengo forma.
En el combobox de modelo tengo la siguiente consulta:

SELECT tabla_modelo.modelo_nombre
FROM tabla_modelo, tabla_marca
WHERE tabla_modelo.modelo_marcaid=tabla_marca.marca_id
AND tabla_modelo.modelo_marcaid=Formularios.formulario_prueba.marcaid;


A ver si me podeis ayudar, porque no aparece nada de nada ._.
En la tabla tabla_marca el campo se llama marcaid (o eso dices) y en el WHERE comparas con el campo marca_id, o eso o te has colado al escribir el post y es otra cosa, que no sabria decirte que es.
¿Lo haces en VB?

Si pones el código sí que podría decirte, porque en mi empresa hice un prototipo de ERP en Access, todo en VB y había mil consultas para rellenar combos
Waylor escribió:En la tabla tabla_marca el campo se llama marcaid (o eso dices) y en el WHERE comparas con el campo marca_id, o eso o te has colado al escribir el post y es otra cosa, que no sabria decirte que es.


modelo_marcaid pertenece a la tabla_modelo, es la foránea de marca_id de la tabla_marca.

jorcoval escribió:¿Lo haces en VB?

Si pones el código sí que podría decirte, porque en mi empresa hice un prototipo de ERP en Access, todo en VB y había mil consultas para rellenar combos


No estoy en VB, es mi alternativa si no consigo sacarlo, de momento quiero hacerlo solo en Access.

He puesto una nueva consulta, pero no consigo que me filtre los campos, siempre me muestra todos en todos.

SELECT tabla_modelo.modelo_nombre
FROM tabla_modelo, tabla_marca
WHERE tabla_modelo.modelo_marcaid=tabla_marca.marca_id
AND tabla_marca.marca_id=tabla_modelo.modelo_marcaid;
Kujah escribió:Pues os comento, tengo 2 tablas:
tabla_marca que tiene marcaid y marca_nombre (ambas clave primaria)
tabla_modelo que tiene modelo_id, modelo_nombre (ambos clave primaria) y modelo_marcaid (foránea de marcaid)

Quiero crear un formulario en el cual al seleccionar en un combo de marca el ID de la marca, me rellene el combo de modelo con los modelos de esa marca, y no tengo forma.
En el combobox de modelo tengo la siguiente consulta:

SELECT tabla_modelo.modelo_nombre
FROM tabla_modelo, tabla_marca
WHERE tabla_modelo.modelo_marcaid=tabla_marca.marca_id
AND tabla_modelo.modelo_marcaid=Formularios.formulario_prueba.marcaid;


A ver si me podeis ayudar, porque no aparece nada de nada ._.


¿No te falta un INNER JOIN?

SELECT tabla_modelo.modelo_nombre
FROM tabla_modelo INNER JOIN tabla_marca ON tabla_modelo.modelo_marcaid=tabla_marca.marca_id
WHERE tabla_marca.marcaid=Formularios.formulario_prueba.marcaid;

Prueba eso a ver si hay suerte.
Como apunta el companyero, te faltaria un inner join para relacionar las dos tablas.
5 respuestas