Sources
Delphi Russian Knowledge Base
DRKB - это самая большая и удобная в использовании база знаний по Дельфи в рунете, составленная Виталием Невзоровым

Как изменить языковый драйвер в runtime?

01.01.2007
procedure SetLanguage(Tbl: TTable; Lang: DbiName);
var
  pOptDesc
: pFLDDesc;
  pOptData
: pBYTE;
  hDb
: hDbiDb;
 
TblDesc: CRTblDesc;
 
Dir: string;
begin
  pOptDesc
:= AllocMem(sizeof(FLDDesc));
  pOptData
:= AllocMem(20);
 
SetLength(Dir, dbiMaxNameLen + 1);
 
Tbl.Active := True;
 
Check(DbiGetDirectory(Tbl.DBHandle, False, PChar(Dir)));
 
SetLength(Dir, StrLen(PChar(Dir)));
 
try
   
FillChar(TblDesc, sizeof(CRTblDesc), #0);
   
Tbl.DisableControls;
   
Tbl.Close;
   
Check(DbiOpenDatabase(nil, nil, dbiReadWrite, dbiOpenExcl, nil, 0, nil, nil,
      hDb
));
   
Check(DbiSetDirectory(hDb, PChar(Dir)));
    pOptDesc
.iOffset := 0;
    pOptDesc
.iLen := Length(Lang) + 1;
   
StrPCopy(pOptDesc.szName, 'LANGDRIVER');
   
StrPCopy(PChar(pOptData), Lang);
   
TblDesc.iOptParams := 1;
   
TblDesc.pfldOptParams := pOptDesc;
   
TblDesc.pOptData := pOptData;
   
StrPCopy(TblDesc.szTblName, Tbl.TableName);
   
StrCopy(TblDesc.szTblType, szParadox);
   
Check(DbiDoRestructure(hDb, 1, @TblDesc, nil, nil, nil, False));
 
finally
   
Check(DbiCloseDatabase(hDb));
   
FreeMem(pOptDesc, sizeof(FLDDesc));
   
FreeMem(pOptData, 20);
   
Tbl.EnableControls;
 
end;
end;

Взято с Delphi Knowledge Base: https://www.baltsoft.com/