PDA

Ver la Versión Completa : Cargar nombres de tablas en un ComboBox


Paulao
12-08-2011, 16:25:06
Como hago para cargar los nombres de las tablas en ComboBox? Yo escojo un Banco de Datos y el sistema carga el Combobox con los nombres de las tablas que pertenence a el. Esto es en Run Time.

duilioisola
12-08-2011, 16:52:36
No especificas qué base de datos estás utilizando...
Con Firebird puedes hacer un select de la tabla RDB$RELATIONS


SELECT * FROM RDB$RELATIONS


También puedes leer esto (http://delphiallimite.blogspot.com/2007/10/leyendo-los-metadatos-de-una-tabla-de.html)

roman
12-08-2011, 16:59:33
Además de lo que comenta duilioisola -que seguramente está en lo correcto- muchos componentes de conexión como el TIBDatabase, TSQLConnection, TDatabase, TADOConnection, etc., tienen métodos del tipo GetTableNames y GetFieldNames para obtener una lista de los nombres de tablas de una base y los nombres de campos de una tabla.

// Saludos

Paulao
12-08-2011, 18:33:07
Sql Server 2005 y 2008

ecfisa
14-08-2011, 01:49:00
Hola Paulao.

Haciendo pié en la sugerencia de roman, podrías hacerte una función que te devuelva los nombres para los distintos tipos de componentes de conección que lo permiten.

Algo como:

function GetTableNames(BD: TCustomConnection): TStrings;
begin
Result:= TStringList.Create;
if BD is TIBDatabase then
TIBDatabase(BD).GetTableNames(Result);
if BD is TADOConnection then
TADOConnection(BD).GetTableNames(Result);
...
end;


Y para llamarla, por ejemplo:

ComboBox1.Items:= GetTableNames(IBDatabase1);
ComboBox2.Items:= GetTableNames(ADoconnection1);
...


Saludos.