Ver Mensaje Individual
  #3 (permalink)  
Antiguo 01/12/2008, 15:24
yguevara
 
Fecha de Ingreso: noviembre-2007
Mensajes: 5
Antigüedad: 16 años, 7 meses
Puntos: 0
De acuerdo Respuesta: ADO -> Access. ¿Como distingo una tabla de un query?

Hola mira aqui te dejo algo sobre el uso del OpenSchema en delphi ...
espero te ayude sin mas
Código:
procedure TForm1.Button1Click(Sender: TObject);
var
TypeField,
NameField: TField;
TableType: string;
DataSet: TADODataSet;
ADOConnection:tADOConnection ;
data:string;
begin
data:=’C:\Program Files\lbi for windows\data\LBU200805.mdb‘; //Database access
// create ado connection
ADOConnection:=tADOConnection.create(nil);
ADOConnection.ConnectionString:=’Provider=Microsoft.Jet.OLEDB.4.0;Data Source=’+
data+’;Persist Security Info=False’;

// create dataset
DataSet := TADODataSet.Create(nil);
try
ADOConnection.OpenSchema(siTables, EmptyParam, EmptyParam, DataSet);
TypeField := DataSet.FieldByName(’TABLE_TYPE’);
NameField := DataSet.FieldByName(’TABLE_NAME’);

try
ListBox1.Clear;
ComboBox1.Clear;

// input tables name to combobox and listbox
while not DataSet.EOF do
begin
TableType := TypeField.AsString;
if (TableType = ‘TABLE’) or (TableType = ‘VIEW’) then
ListBox1.items.Add(NameField.AsString);
ComboBox1.items.Add(NameField.AsString);
DataSet.Next;
end;
finally
end;
finally
DataSet.Free;
end;