Cita:
Iniciado por -thor- Hola, como están?
una consulta, si yo entiendo bien SQL, tanto como procedimientos almacenados, trigger, respaldos, y consultas en general (select, delete, update, insert).
¿podría manejar todos los motores de base de datos? como Oracle o sybase? o es necesario estudiar cada uno de ellos, porque actualmente tengo bastante experiencia en SQL SERVER y el lenguaje SQL
gracias
No exactamente...
La lógica básica es la misma, por lo que en muchos sentidos pasar de uno a otro no es tan difícil, pero:
1) No existe un lenguaje procedural estandarizado, por lo que cada DBMS posee una sintaxis y metodología propia para procedures, functions, triggers y todo tipo de rutinas almacenadas.
2) Salvo ciertas funciones que están en el estandar SQL, el resto de las funciones de fecha, cadena, numericas, lógicas, etc, no existen en todos los DBMS, ni con el mismo nombre, y aquellas que tienen igual nombre no poseen la misma sintaxis.
3) Existen clausulas en algunos DBMS que no existen en otros, así como pueden tener diferentes comportamientos entre ellos.
4) Existen ciertas sentencias que son propias de algunos DBMS, y no existen en las demás. Esas sentencias diferentes es donde reside unos de los máximos goals de cada DBMS. Es decir, donde son realmente poderosos, donde aprovechan su potencial, y muchas veces las necesitas...
5) La metodología de optimización no es igual entre ellos. Ciertas optimizaciones propias de uno se deben realizar de otra forma con otros.
6) Los tipos de datos no son iguales en todos los casos, y algunos poseen tipos que no existen en otros, si bien los DBMS converiten los ajenos a propios en base a ciertos esquemas. Pero suele ocurrir que no sean exactamente iguales y por tanto algunos aspectos de la programación de las aplicaciones deban cambiarse si se migra de uno a otro.
7) La forma de crear las tablas, indices, bases, restricciones, checks y demás puede cambiar en aspectos fundamentales. Esto se puede ver en caso de DBMS que tienen más de un motor de tablas (caso MySQL), donde las foreign key sólo existen en uno y no en otros. En otros DBMS el CHECK no existe, con lo que eso implique.
8) Otros...
Puedo seguir, pero creo que eso es suficiente como para darte una idea de que lo primero que debes hacer cuando cambias de DBMS es
leer el manual para ponerte al tanto de las diferencias, y luego
tener siempre el manual a mano...