2011-02-10 15 views
15

¿Cuáles son las diferencias - características y rendimiento - entre MySQL y Oracle 11g? Me gustaría poder hacer una elección educada entre los dos dada una situación.Diferencias entre MySQL y Oracle DB

Nota: Vínculos a prueba obviamente ayudarán.

+0

Depende de la versión. – BoltClock

+0

@BoltClock: Editado. 11g. –

Respuesta

12

cosas que MySQL aún no existe (que Oracle tiene)

  • limitaciones diferibles
  • restricciones de comprobación
  • consultas recursivas
  • funciones de tabla
  • expresiones de tabla comunes
  • funciones de ventanas
  • función basada ind ex
  • índice parcial
  • No MENOS (o INTERSECT) operador
  • muy simple optimizador de consulta cuando se trata de sub-selecciona
  • Una gran cantidad de no estándar Sintaxis (|| es una lógica o)
  • sin retroceso
+0

Sí, odio especialmente la sintaxis no estándar de MySQL: | – BoltClock

+1

Un par más: clústeres de tabla/índice, clústeres de hash de una sola tabla, secuencias como objetos separados –

+1

Uno más: planes de ejecución para sentencias no seleccionadas –

2

Al parecer, MySQL puede tell the difference between an empty VARCHAR and a NULL value :-)

Eso por sí solo es suficiente para mí para evitar Oracle.

+1

Siempre me pregunto por qué las personas necesitan esa distinción. No existe un entero "vacío" o una fecha "vacía" o un valor decimal "vacío". Entonces, ¿por qué se necesita esto para las cuerdas? Y veo cosas como 'if (string == null || string.length() == 0)' en muchas aplicaciones en todos los lugares. Así que, aparentemente, en la interfaz, una cadena vacía y una cadena vacía a menudo se tratan por igual. Lo que me parece más molesto es que este comportamiento no es coherente con Oracle. Algunas veces no trata una cadena vacía como nula. –

+3

De hecho, hay una gran diferencia. El punto de un valor NULL es indicar desconocido o no aplicable. Hay una diferencia entre alguien sin segundo nombre y alguien con un segundo nombre desconocido. Estas cosas pueden no importarles a los fanáticos del mundo del DBA pero son muy importantes para aquellos que entienden los problemas :-) – paxdiablo

+0

Entonces, ¿qué es el equivalente de una cadena vacía para un valor entero? (Y por favor, no digas que es cero) –

Cuestiones relacionadas