Condición del Select

Buenos Días, mire estoy realizando una base de datos, con varias tablas, el cual tiene un buscador y en la condición del select para que me muestro lo que estoy buscando le pongo que me muestre todas las que contenga la cadena o letra que le ponga y los que el campo histórico que es boolean sea false lo pongo así:

var = "SELECT Términos.Indice,Términos.Termino,Términos.Siglas FROM Términos Where ([Términos].[Termino]like '*" & Buscar.Text & "*') and ([definiciones].[histórico] = false) order by [Termino]ASC;"

Al ejecutarlo me solicita el valor del parámetro definiciones.histórico

como podría coger el parámetro de la tabla definiciones y el campo histórico para que me muestre todas las definiciones donde el campo histórico es false.

Ante todo muchísimas gracias por perder el tiempo con esta pregunta.

1

1 respuesta

Respuesta
1

Creo que lo que está mal es el SELECT. Resalto lo que he cambiado. Prueba así:

var = "SELECT Términos.Indice,Términos.Termino,Términos.Siglas,definiciones.histórico FROM Términos,definiciones Where ([Términos].[Termino]like '*" &
Buscar.Text & "*') and ([definiciones].[histórico] = false)
order by [Termino]ASC;"

Me ha servido esa solución muchas gracias por tu ayuda.

Pero ahora el fallo me lo encuentro en que como tengo las dos tablas relacionadas de 1 a varios, el uno es la tabla términos y el varios es la tabla definiciones.

Ahora lo que me sale son todos los términos en donde tenga enlazado alguna definición, es decir en vez de salirme nada mas un termino, me puede llegar a salir todos los términos donde tenga enlazado alguna definición, imaginate si ese termino tiene 4 definiciones , me sale 4 veces el termino.

Muchísimas gracias por echarme una mano.

Se me ha olvidado el código que pongo:

Me.Resultados.ColumnCount = 3
Me.Resultados.ColumnWidths = "0 cm;9 cm;3 cm"
var = "SELECT Términos.Indice,Términos.Termino,Términos.Siglas,Definiciones.histórico FROM Términos,Definiciones Where ([Términos].[Siglas]like '*" & Buscar.Text & "*') and ([Definiciones].[histórico] = false) order by [siglas]ASC;"
Me.Resultados.RowSource = var

Resultados es un cuadro de lista.

Muchas Gracias.

Como bien dices seguramente tengasque modificar las relaciones y quizá también identificar un campo de relación en cada tabla.

Ve comprobandolo

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas