Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2005.11.27;
Скачать: [xml.tar.bz2];

Вниз

Можно ли узнать количество таблиц у SQL сервера   Найти похожие ветки 

 
__Пупкин   (2005-10-16 11:00) [0]

Т.е. надо прочитать структуры БД: получить имена всех таблиц а в таблица все поля.


 
isasa ©   (2005-10-16 11:17) [1]

Если использовать ADO.
Соединиться, юзаем
function EditConnectionString(Component: TComponent): Boolean;
из
$Delphi$\Source\Property Editors -> AdoConEd.pas

var SourceConnection: TADOConnection;
   tNameBo: TComboBox;
...
 if EditConnectionString(SourceConnection) then begin
   tNameBox.Items.Clear;
   SourceConnection.GetTableNames(tNameBox.Items, false);
...

Поля можно вывести в TListView

procedure TConnForm.FillFieldList;
var mF : TListItem;
   i : integer;
begin
 FieldList.Clear;
 for i:=0 to testTable.FieldCount-1 do begin
   mF:=FieldList.Items.Add;
   mF.Caption:=testTable.Fields[i].FieldName;
   mF.SubItems.Add(DataTypeStr(testTable.Fields[i].DataType));
   mF.SubItems.Add(IntToStr(testTable.Fields[i].DataSize));
 end;
end;

function TConnForm.DataTypeStr(fType : TFieldType) : string;
begin
 case fType of
   ftUnknown:  Result:="Unknown or undetermined";
   ftString:  Result:="Character or string field";
   ftSmallint:  Result:="16-bit integer field";
   ftInteger:  Result:="32-bit integer field";
   ftWord:  Result:="16-bit unsigned integer field";
   ftBoolean:  Result:="Boolean field";
   ftFloat:  Result:="Floating-point numeric field";
   ftCurrency:  Result:="Money field";
   ftBCD:  Result:="Binary-Coded Decimal field that can be converted to Currency type without a loss of precision.";
   ftDate:  Result:="Date field";
   ftTime:  Result:="Time field";
   ftDateTime:  Result:="Date and time field ";
   ftBytes:  Result:="Fixed number of bytes (binary storage)";
   ftVarBytes:  Result:="Variable number of bytes (binary storage)";
   ftAutoInc:  Result:="Auto-incrementing 32-bit integer counter field";
   ftBlob:  Result:="Binary Large OBject field";
   ftMemo:  Result:="Text memo field";
   ftGraphic:  Result:="Bitmap field";
   ftFmtMemo:  Result:="Formatted text memo field";
   ftParadoxOle:  Result:="Paradox OLE field";
   ftDBaseOle:  Result:="dBASE OLE field";
   ftTypedBinary:  Result:="Typed binary field";
   ftCursor:  Result:="Output cursor from an Oracle stored procedure (TParam only)";
   ftFixedChar:  Result:="Fixed character field";
   ftWideString:  Result:="Wide string field";
   ftLargeint:  Result:="Large integer field";
   ftADT:  Result:="Abstract Data Type field";
   ftArray:  Result:="Array field";
   ftReference:  Result:="REF field";
   ftDataSet:  Result:="DataSet field";
   ftOraBlob:  Result:="BLOB fields in Oracle 8 tables";
   ftOraClob:  Result:="CLOB fields in Oracle 8 tables";
   ftVariant:  Result:="Data of unknown or undetermined type";
   ftInterface:  Result:="References to interfaces (IUnknown)";
   ftIDispatch:  Result:="References to IDispatch interfaces";
   ftGuid:  Result:="globally unique identifier (GUID) values";
   ftTimeStamp:  Result:="Date and time field accessed through dbExpress";
   ftFMTBcd:  Result:="Binary-Coded Decimal field that is too large for ftBCD.";
   else
     result:="???";
 end;
end;


 
__Пупкин   (2005-10-16 11:28) [2]

Спасибо. Ты мне помог.



Страницы: 1 вся ветка

Форум: "Базы";
Текущий архив: 2005.11.27;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.014 c
14-1130784129
X9
2005-10-31 21:42
2005.11.27
Ищу алгоритм разбора


14-1130828683
Keni
2005-11-01 10:04
2005.11.27
Создание проги для КПК


14-1130875980
x.pro
2005-11-01 23:13
2005.11.27
Подскажите, пожалуйста, какую-нибудь философскую фразу...


3-1129513865
antoxa2005
2005-10-17 05:51
2005.11.27
Подскажите, а можно ли сохранить в поле БД Access любой объект ?


1-1131007884
Vetalich
2005-11-03 11:51
2005.11.27
ListBox





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский