c++ database otl soci

c++ - Diferencias entre OTL y SOCI



database (1)

Hace un par de años los comparé a ambos y decidí ir con Soci para un proyecto que usara un servidor ODBC de Sql y un backend de Sqlite. En aquel entonces, tanto Soci como OTL parecían mantenidos activamente pero Soci tenía una interfaz más agradable. No he usado OTL desde entonces, pero he usado mucho a Soci en un proyecto de tamaño mediano.

He tenido un par de problemas inesperados con Soci, como limitaciones en la longitud de las cadenas (versión 3.0 de 2008). El principal problema con Soci es que no se mantiene muy activamente. No hubo actualizaciones entre 2008 y 2011, por lo que a lo largo de los años tuve que escribir soluciones, corregir el código yo mismo o usar material experimental del repositorio. Debido a esta falta de actualizaciones, he considerado mudarme a OTL pero todavía no he dado el salto. Prefiero la pulcritud de Soci en lugar de OTL, pero mantener el código mantenido activamente es más importante a largo plazo.

No he probado el nuevo lanzamiento de Soci (2011-10-11) todavía, pero estaría muy contento si resolviera algunos de mis problemas anteriores. Soci es una gran biblioteca de db y me gustaría recibir más amor y atención.

Así que, en definitiva. OTL puede ser una apuesta más segura, ya que parece que se actualiza con más frecuencia (pero no la he utilizado, por lo que no puedo asegurarlo). Soci es "más agradable" si tu gusto es como el mío y es perfectamente utilizable. Definitivamente lo usaría de nuevo para un proyecto pequeño, pero tal vez no para un proyecto grande debido al mantenimiento limitado.

EDIT: Acabo de probar la nueva versión de Soci 3.1 y han solucionado los problemas con cadenas largas en el back-end de odbc. Creo que me quedaré con Soci un poco más.

¿Cuáles son las ventajas y desventajas de las bibliotecas de bases de datos C ++ OTL y SOCI? En particular, ¿qué diferencias son relevantes para mi proyecto, cuya base de datos usa SQL Server 2008?

No he usado ninguno antes, y durante mi proyecto no quiero cambiar la biblioteca.