|
<< Click to Display Table of Contents >> Delphi Examples: DbiGetTableTypeDesc |
![]() ![]()
|
Retrieve a description of the capabilities of the table type
The description is appended to the TStringList passed in. This example uses the following input:
fDbiGetTableTypeDesc(szPARADOX, 'PDOX 7.0', MyTableInfo);
fDbiGetTableTypeDesc(szDBASE, 'DBASE5', MyTableInfo);
fDbiGetTableTypeDesc('INTRBASE', 'INTERBASE', MyTableInfo);
The procedure is:
procedure fDbiGetTableTypeDesc(DriverType, TableType: PChar;
var TableTypeInfo: TStringList);
function BoolVal(InBool: Boolean): String;
begin
if InBool then Result:= 'True'
else Result:= 'False';
end;
var
TableTypeRec: TBLType;
begin
Check(DbiGetTableTypeDesc(DriverType, TableType, TableTypeRec));
TableTypeInfo.Add('Table ID: ' + IntToStr(TableTypeRec.iId));
TableTypeInfo.Add('Name: ' + StrPas(TableTypeRec.szName));
TableTypeInfo.Add('Text: ' + StrPas(TableTypeRec.szText));
TableTypeInfo.Add('Format: ' + StrPas(TableTypeRec.szFormat));
TableTypeInfo.Add('User can Read/Write: ' + BoolVal(TableTypeRec.bReadWrite));
TableTypeInfo.Add('Can create new tables: ' + BoolVal(TableTypeRec.bCreate));
TableTypeInfo.Add('Can restructure: ' + BoolVal(TableTypeRec.bRestructure));
TableTypeInfo.Add('Val Checks can be specified: ' + BoolVal(TableTypeRec.bValChecks));
TableTypeInfo.Add('Can be protected: ' + BoolVal(TableTypeRec.bSecurity));
TableTypeInfo.Add('Can participate in ref integrity: ' + BoolVal(TableTypeRec.bRefIntegrity));
TableTypeInfo.Add('Supports primary key concept: ' + BoolVal(TableTypeRec.bPrimaryKey));
TableTypeInfo.Add('Can have other indexes: ' + BoolVal(TableTypeRec.bIndexing));
TableTypeInfo.Add('Number of Phy Field types supported: ' + IntToStr(TableTypeRec.iFldTypes));
TableTypeInfo.Add('Max record size: ' + IntToStr(TableTypeRec.iMaxRecSize));
TableTypeInfo.Add('Max fields in a table: ' + IntToStr(TableTypeRec.iMaxFldsInTable));
TableTypeInfo.Add('Maximum field name length: ' + IntToStr(TableTypeRec.iMaxFldNameLen));
TableTypeInfo.Add('Driver dependent table level (version): ' + IntToStr(TableTypeRec.iTblLevel));
end;