Форум: "Базы";
Текущий архив: 2002.09.26;
Скачать: [xml.tar.bz2];
ВнизСписок алиасов BDE и ODBC Найти похожие ветки
← →
Senia__ (2002-09-05 10:55) [0]Здравствуйте !!!
У меня вот возникла проблема: надо получить список всех алиасов из BDE Administratora, по определенному алиасу - список всех таблиц и по таблице - список всех полей в ней. И тоже самое надо проделать и с ODBC.
Заранее благодарен...
← →
KDS (2002-09-05 11:58) [1]Используй компоненты TSession и TTable
Список алиасов толкаю в cbAliases1 (TCombobox)
try
TMPList:=TStringList.Create;
Session.GetAliasNames(TMPList);
cbAliases1.Items.Clear;
cbAliases1.Items.Assign(TMPList);
finally
TMPList.Free
end;
список всех таблиц по выбранному Алиасу
try
TMPList:=TStringList.Create;
Session.GetTableNames(cbAliases1.Text, "*.*", DefTbl, not DefTbl , TMPList);
cbTableNames1.Items.Assign(TMPList);
finally
TMPList.Free
end;
список всех полей по выбранной таблице
procedure TfmSQLIngener.GetFieldInfo(const Alias,table:ShortString;
var StringGrid:TStringGrid);
var c:integer;
FieldType:ShortString;
f:integer;
begin
tbAdmin.Close;
try
tbAdmin.DatabaseName:=Alias;
tbAdmin.TableName:=Table;
tbAdmin.Open;
StringGrid.RowCount:=tbAdmin.FieldCount+1;
StringGrid.Cells[0,0]:="????";
StringGrid.Cells[1,0]:="???";
StringGrid.Cells[2,0]:="?????";
StringGrid.FixedCols:=0;
StringGrid.FixedRows:=1;
f:=tbAdmin.FieldCount;
for c:=0 to f-1 do begin
StringGrid.Cells[0,c+1]:=tbAdmin.Fields[c].FullName;
StringGrid.Cells[2,c+1]:=IntToStr(tbAdmin.Fields[c].DataSize);
case tbAdmin.Fields[c].DataType of
ftUnknown : FieldType:="ftUnknown";
ftString : FieldType:="ftString";
ftSmallint : FieldType:="ftSmallint";
ftInteger : FieldType:="ftInteger";
ftWord : FieldType:="ftWord";
ftBoolean : FieldType:="ftBoolean";
ftFloat : FieldType:="ftFloat";
ftCurrency : FieldType:="ftCurrency";
ftBCD : FieldType:="ftBCD";
ftDate : FieldType:="ftDate";
ftTime : FieldType:="ftTime";
ftDateTime : FieldType:="ftDateTime";
ftBytes : FieldType:="ftBytes";
ftVarBytes : FieldType:="ftVarBytes";
ftAutoInc : FieldType:="ftAutoInc";
ftBlob : FieldType:="ftBlob";
ftMemo : FieldType:="ftMemo";
ftGraphic : FieldType:="ftGraphic";
ftFmtMemo : FieldType:="ftFmtMemo";
ftParadoxOle : FieldType:="ftParadoxOle";
ftDBaseOle : FieldType:="ftDBaseOle";
ftTypedBinary : FieldType:="ftTypedBinary";
ftCursor : FieldType:="ftCursor";
ftFixedChar : FieldType:="ftFixedChar";
ftWideString : FieldType:="ftWideString";
ftLargeint : FieldType:="ftLargeint";
ftADT : FieldType:="ftADT";
ftArray : FieldType:="ftArray";
ftReference : FieldType:="ftReference";
ftDataSet : FieldType:="ftDataSet";
ftOraBlob : FieldType:="ftOraBlob";
ftOraClob : FieldType:="ftOraClob";
ftVariant : FieldType:="ftVariant";
ftInterface : FieldType:="ftInterface";
ftIDispatch : FieldType:="ftIDispatch";
ftGuid : FieldType:="ftGuid";
end;
StringGrid.Cells[1,c+1]:=FieldType;
end;
finally
tbAdmin.Close;
end;
end;
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2002.09.26;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.01 c