Is is possible to write your own FireDAC driver? Or to write a 'shim' driver that does something and then passes on to another specific, existing driver?

Is is possible to write your own FireDAC driver? Or to write a 'shim' driver that does something and then passes on to another specific, existing driver?
With dbExpress is was possible to work with a logging driver.... is there any scope for doing this kind of thing with FireDAC? I get the impression the list of drivers is hard-coded...

Comments

  1. This Google cached post of the forums at Oct 13, 2014, indicates it is not possible.

    Dmitry Arefiev writes 
    (Selective copying by me)
    This is not documented and is not supported. 
    ... at moment the list of the drivers is hardcoded, in the sense that there
    are TFDRDBMSKind enum type and several "array [TFDRDBMSKind]...".
    Because here never was requests for 3d party drivers. If that is needed,
    then you can log your feature request into QC.

    :/

    http://webcache.googleusercontent.com/search?q=cache:j51sOd5ei5cJ:https://forums.embarcadero.com/message.jspa%3FmessageID%3D673774+&cd=1&hl=en&ct=clnk&gl=no

    ReplyDelete
  2. Ok, so it seems that it is in  fact possible, but you need to touch the said enum.

    ReplyDelete
  3. FDPhysManager().RegisterDriverClass(TFDPhysSQLiteDriver);  and RegisterRDBMSKind ?

    ReplyDelete
  4. The enum was replaced in XE8 by a registration mechanism. Now I still think writing a driver is a bit complex and little documented, but we do have a couple of partners currently attempting that. 
    There isn't the concept of a driver acting as a filter, though, like in DBX.

    ReplyDelete
  5. I hope it has been replaced - Using an enum is just sucky. Now that I have finished my rant, I do believe that NexusDB is working on a FireDAC driver for their database.

    ReplyDelete
  6. Ok, I just discovered documentation that implies you can get FireDAC to connect to a dbxpress driver.... you can see where I might be going with this :-)

    Out of interest, anyone tried doing this - before I put some time aside next week to mock it up?

    ReplyDelete

Post a Comment