Las razones por las que se eliminó el SQL incorporado
El SQL incorporado no se elimina, pero se evita en determinados escenarios. SQL incorporado se refiere a la práctica de incorporar sentencias SQL directamente en un lenguaje de programación, como incorporar sentencias SQL en un programa Java. El SQL incorporado tiene algunos problemas:
1. Pobre legibilidad y mantenibilidad: el SQL incorporado hace que el código SQL y el código de la aplicación estén estrechamente acoplados, lo que dificulta la lectura y el mantenimiento del código. Al modificar declaraciones SQL, es necesario modificar el código de la aplicación, lo que aumenta la dificultad de desarrollo y mantenimiento.
2. Problemas de seguridad: SQL incorporado requiere empalme de cadenas cuando se usa y es vulnerable a ataques de inyección SQL. Un atacante puede modificar, eliminar u obtener datos de forma maliciosa en la base de datos insertando código SQL malicioso en la entrada.
3. Problemas de portabilidad: SQL incorporado generalmente utiliza la sintaxis y las características de una base de datos específica, lo que hace que la aplicación necesite realizar muchas modificaciones al cambiar de base de datos.
Para resolver estos problemas, los desarrolladores generalmente adoptan el marco ORM (Object Relational Mapping). El marco ORM puede proteger los detalles de la base de datos subyacente y proporcionar una API más amigable al asignar objetos de la base de datos a objetos, lo que hace que las operaciones de la base de datos sean más concisas, legibles y fáciles de mantener. Al mismo tiempo, el marco ORM puede implementar un mecanismo de protección contra la inyección SQL, mejorando la seguridad de las aplicaciones. El marco ORM también admite la conmutación entre múltiples bases de datos, lo que mejora la portabilidad de las aplicaciones.
SQL incorporado aún se puede utilizar en algunos escenarios simples y, en proyectos complejos a gran escala, el uso del marco ORM puede mejorar la legibilidad, la mantenibilidad y la seguridad del código.