ADO wurde von Microsoft als Nachfolger von
ODBC mit genau diesem Ziel entwickelt: Eine einheitliche Schnittstelle für die unterschiedlichsten Datenbanken zu schaffen: Was in der Theorie so schön klingt, ist in der Praxis zum Scheitern verurteilt, eben wegen dem 'kleinsten gemeinsamen Nenner'. Damit wird so eine Schnittstelle zur lahmen Ente.
Wenn Du deine
DLL nicht nur zur Übung entwickelst, sondern auch an einen Einsatz denkst, würde ich wirklich
ADO verwenden (oder irgend eine andere Bibliothek, wie Zeos, DBExpress etc. ). Wozu (außer zu Lernzwecken) das
Rad zweimal erfinden?