mormot 直接使用UNIDAC引擎操作數據庫
MORMOT封裝了BDE、FIREDAC、UNIDAC、Nexus 四種通用型數據庫引擎,形成了自己獨特的數據引擎控件。前提條件是首先要安裝通用型數據庫引擎。
MORMOT還單獨封裝了SQLITE、ORACLE、Zeos、ODBC、Firebird、MongoDB等數據庫的驅動,還有OleDB驅動MSSQL和MSACCESS數據庫。
此處不使用MORMOT封裝的UNIDAC控件來操作數據庫,而直接使用UNIDAC數據引擎查詢數據。
MORMOT驅動數據庫的原則:優先使用數據庫的專用驅動,沒有,則使用通用數據庫引擎。因為專用數據庫驅動速度無疑是最快也是最穩定的。
class function Tmymethod.query(const sql: string): RawUTF8;
var
dm: tfdm;
begin
Result := sfalse;
if (sql = '') then
Exit;
dm := Tfdm.Create(nil);
try
try
dm.UniQuery1.Close;
dm.UniQuery1.SQL.Clear;
dm.UniQuery1.SQL.Add(sql);
dm.UniQuery1.Open;
addLog(sql); // sql log
Result := DataSetToJSON(dm.UniQuery1);
except
on E: Exception do
begin
Result := sfalse;
addLog('Tmymethod.query ' + E.Message); // err log
end;
end;
finally
dm.Free;
end;
end;