Get structure database version

Posted in Databases

Use Dbi functions. The following unit provides a function that keep the structure database version:

uses
  DbiProcs, DbiTypes, Windows, Messages, SysUtils, Classes, Graphics, 
  Controls, Forms, Dialogs, StdCtrls, Db, DBTables, Grids, DBGrids;
...
procedure TForm1.Button1Click(Sender: TObject);
var
  HCursor: HDBICur;
  TableDesc: TBLFullDesc;
  CName: array[0..255] of Char;
  Version: Integer;
begin
  StrPCopy(CName, Table1.TableName);
  Check(
    DbiOpenTableList(
      Table1.DBHandle, 
      True, 
      False, 
      CName, 
      HCursor));
  Check(
    DbiGetNextRecord(
      HCursor, 
      dbiNOLOCK, 
      @TableDesc, 
      nil));
  Version:=TableDesc.tblExt.iRestrVersion;
  Check(DbiCloseCursor(HCursor));
  MessageDlg('Version '+IntToStr(Version), mtInformation,[mbOK], 0);
end;