7
votes

Quelles sont les alternatives pour une bibliothèque multidatabase pour C / C ++?

Je veux écrire une application qui devrait pouvoir se connecter à plusieurs bases de données (ceci sera configuré par des paramètres au démarrage). L'application aura différentes requêtes pour chaque moteur de base de données, ce n'est pas un problème.

Le problème est que je veux pouvoir vous connecter à différents moteurs de base de données. Java a JDBC, Perl a DBI. Qu'est-ce que c ++ a?

De plus, je ne veux pas utiliser de pilotes de base de données avec des licences trop strictes (commerciales). GPL pourrait être - mais j'aimerais éviter cela.


3 commentaires

Pourrait être fermé en raison du mot-clé "meilleur". Pensez à en faire un wiki communautaire.


Merci pour le commentaire, j'ai changé la question.


SOCI SOCI.SOURCEFORGE.net - Fin de discussion.


4 Réponses :


0
votes

Il y a les connexions ole plus anciennes. En utilisant OLE, vous pouvez vous connecter à un fichier plat, Oracle, SQL ou MySQL de base de données à condition que les pilotes corrects soient installés.


0 commentaires

1
votes

Pratiquement chaque moteur de base de données existant fournit une interface ODBC. Je pense que JDBC est en fait un clone de ODBC.

Ce que vous voulez, alors, est une enveloppe C ++ pour l'API ODBC, qui implémente Raii pour s'assurer que les ressources de la base de données sont libérées en cas d'exception, etc. Par exemple: http://simpledb.sourceforge.net/


0 commentaires

0
votes

ODBC est le plus compatible et le plus bas niveau. OLE DB est un niveau supérieur et plus facile à utiliser. Donc, si vous trouvez un fournisseur OLE DB pour tous vos systèmes de DB possibles, c'est la voie à suivre. Sinon ODBC est votre option car pratiquement tous les systèmes de DB le supportent.

EDIT: Voir ce lien: http://blogs.msdn.com/b/sqlnativeclient/archive/2011/08/29/microsoft-is-aligning-with-oDBC-for-native- Relationnel-Data-Access.aspx Cela rend ODBC le seul choix approprié. :)


0 commentaires

0
votes

Le système de cartographie relationnel de l'objet C ++ ODB de la société codesynthèse peut être utilisé par logiciel GPL version 2.

http://codesynthesis.com/products/odb/

Voici une entrée de blog où ils décrivent pourquoi ils ont choisi d'utiliser des API de Native C au lieu de ODBC pour se connecter aux bases de données.

http://codesynthesis.com/~boris/blog / 2011/12/09 / OCI-MINGW /

La vitesse était l'une des raisons.


0 commentaires