Supongamos que tienes una tabla de personas y una de paises
personas = (id, nombre, pais_id)
paises = (id, nombre)
Muestras la tabla personas en un DBGrid y quieres mostrar en un combo la lista de (nombres de) países de manera que al seleccionar uno, se actualice el campo pais_id.
¿Es así?
A veces es mejor no ser tan abstracto y poner un ejemplo concreto para fijar ideas.
Como no trabajo con FireBird, desconozco cuál pueda ser la mejor opción. Pero puedes revisar
este mensaje en el que explico cómo agregar un campo "lookup" de manera que el combo te aparezca dentro del dbgrid.
Otra forma sería usar un DBLookupComboBox ajustando sus propiedades:
DataSource <-- IBDataSetPersonas
DataField <-- pais_id
ListSource <-- IBDataSetPaises
ListField <-- nombre
KeyField <-- id
En este caso el combo estaría fuera del dbgrid.
// Saludos