Estoy empezando a usar el ORM recomendado por el marco que elijo, y aunque me gusta la idea de la capa adicional de abstracción que proporciona el ORM, estoy empezando a darme cuenta de lo que esto realmente significa. Significa que ya no estoy trabajando con mi base de datos (mysql) y todas las características específicas de mysql han desaparecido, fuera de la ventana, como si no existieran.
La idea que tiene el ORM es que está tratando de ayudarme haciendo todo lo agnóstico de la base de datos. Esto suena genial, pero a menudo hay una razón por la que elijo un sistema de base de datos específico. Pero al seguir la ruta agnóstica de la base de datos, el ORM toma el mínimo común denominador, lo que significa que termino con el conjunto más pequeño de características (las admitidas por todas las bases de datos).
¿Qué sucede si sé que a largo plazo no cambiaré la base de datos subyacente? ¿Por qué no acceder también a las funciones específicas de la base de datos?