Hola a todos:
Estoy haciendo una pequeña aplicación y me he atrancado con un combobox.
Cuando cojo el foco del combo, lo relleno con los nombres que tengo en una SQLite.
Hasta aquí bien
Blockquote
if db.Connect then
TFNombreAroma1.DeleteAllRows
Dim rcar As RecordSet = db.SQLSelect(“Select nomaro from Aromas order by idaroma”)
if rcar<> nil and rcar.RecordCount > 0 Then
While not rcar.EOF
TFNombreAroma1.AddRow rcar.Field("nomaro").StringValue
rcar.MoveNext
Wend
end if
end if
Blockquote
Ahora quiero, que un dato asociado en esa misma tabla rellene un textfield y no hay manera , alguien me puede echar una mano. Gracias
Gracias por contestar.
el ejemplo me escribe en el textfield lo que tengo seleccionado en el combo; lo que quiero es que una vez seleccionado un item en el combo, me escriba otro dato asociado a ese item y que está almacenado en la misma tabla de la base de datos, que en este caso es numérico.
Te mando una captura de pantalla y voy a seguir investigando.
Saludos
A pesar de que no tengo ni idea de SQL no me parece difícil.
Podrías pedirle a la base de datos los valores del aroma seleccionado en el comboBox que necesitas mediante SQL añadiendo un WHERE. Es decir, hacer llamadas a la base de datos cada vez que cambie el valor del ComboBox.
O podrías generar un dictionary mientras añades los aromas al combobox, teniendo como key el aroma y como value los valores que necesites en el resto de textfields en un array, por ejemplo. Para esto necesitas modificar tu comando SQL (creo, ya te he dicho que no tengo experiencia). Es decir, hacer una única llamada a la base de datos y guardar todos los datos en un dictionary.
He probado con el where pero me da nil, lo del diccionary tengo que estudiarlo mejor. lo he visto en ejemplos sin sql, pero la verdad es que nunca lo he usado. voy a echarle un vistazo.
ya lo he solucionado, eran las comillas finales
lo pego aquí por si le sirve a alguien.
Un saludo.
Dim rcar As RecordSet = db.SQLSelect(“Select * from Aromas where nomaro=’”+TFNombreAroma1.Text+"’")