使用 FireDac 检查数据库是否支持事务

Check if database has support for transactions using FireDac

如何使用 FireDac 组件检查 DBMS 是否支持事务处理?
通常,我使用类似以下代码的东西,在我的 DAO class 中使用 dbExpress 执行事务。

...
connection: TSQLConnection;
dbxTransaction: TDBXTransaction;
... 

if (connection.TransactionsSupported) AND ((not connection.InTransaction) OR (connection.MultipleTransactionsSupported)) then
begin
    dbxTransaction := connection.BeginTransaction(TDBXIsolations.ReadCommitted);
end;

那么,我在 dbExpress 中使用的 FireDac 中的对应属性是什么:
TransactionsSupported
InTransaction
MultipleTransactionsSupported

提前致谢。

  • TransactionsSupported - TFDConnection.ConnectionMetaDataIntf.TxSupported
  • 交易中 - TFDConnection.InTransaction
  • 支持多个交易 - TFDConnection.ConnectionMetaDataIntf.TxMultiple