Ver Post

MyISAM vs InnoDB: ventajas y desventajas

En Bases de Datos, MySQL por trellat1 Comentario

En algunas bases de datos, la primera decisión que hay que tomar es decidir si el motor de la base de datos va a ser MyISAM o InnoDB. Este es el caso, por ejemplo, de MySQL. A partir de la versión 5.5 de MySQL, el motor por defecto es InnoDB, pero también puede usarse MyISAM, así que es interesante saber …

Ver Post

Sinónimos Huérfanos en Oracle

En Bases de Datos, Oracle por trellat0 Comentarios

Los objetos tipo sinónimo (tanto públicos como privados) en la base de datos son alias a otros objetos de base de datos. Estos objetos a los cuales se hace referencia en Oracle, tienen la peculiaridad de que pueden existir en la Base de datos o no. Otro caso que se puede dar es que también es posible crear un sinónimo …

Ver Post

Crear una Secuencia en Oracle

En Bases de Datos, Oracle por trellat0 Comentarios

Es típico, a la hora de crear una nueva tabla, el crear un campo id a modo de clave primaria (PK, primary key), cuyo valor será numérico y se irá incrementando según se vaya rellenando la tabla. Para estos casos se suele usar una secuencia. Este tipo de objeto de Oracle es muy útil para estos casos aunque también se …

Ver Post

Cambiar la contraseña de un usuario en Oracle

En Bases de Datos, Oracle por trellat0 Comentarios

Al igual que en muchas aplicaciones o entornos corporativos, por política de seguridad suele ser frecuente que la contraseña caduque. Es una forma de obligar a renovarla cada poco tiempo, lo que aumenta la seguridad. Además de esto, se suele pedir unos requisitos como una longitud mínima o que no se repita. En esta ocasión nos centramos en cambiar la …

Ver Post

Optimizar is null en Oracle

En Bases de Datos, Oracle por trellat0 Comentarios

Viendo el explain plan o plan de ejecución de una consulta en Oracle, podemos llegar a ver el caso en el cual se está haciendo un recorrido FULL a una tabla, la cual se está filtrando en la consulta mediante un IS NULL sobre uno de sus campos. En estos casos, puede convenir el optimizar is null. Sobretodo si la …

Ver Post

Saber si un valor es numérico en Oracle

En Bases de Datos, Oracle por trellat0 Comentarios

En ocasiones, puede ser de utilidad saber si un valor es numérico para aplicarle o no un tratamiento o preprocesado. Puede servir para discriminar a los valores numéricos en una select porque a lo mejor, lo que se quiera hacer con ese valor daría error si el valor no es numérico. Este problema suele aparecer en los campos que almacenan …

Ver Post

Split de cadenas cortas en SQL Server‏

En Bases de Datos, SQL Server por trellat0 Comentarios

Buscando si existe alguna función en SQL Server parecida al Split de Java para parsear cadenas sin tener que montar un procedimiento con charindex y substrings para separar las cadenas, al final he dado con la función PARSENAME, que no sirve exactamente para hacer split de cadenas en sí, pero para cadenas cortas funciona bien y sobretodo es rápido y directo. Realmente, …

Ver Post

Comprobar si existe un fichero con SQL Server

En Bases de Datos, SQL Server por trellat0 Comentarios

Para hacer más estable un procedimiento almacenado o stored procedure en SQL Server que trabaje con ficheros se puede realizar la comprobación de si el fichero en cuestión existe antes de empezar a procesarlo, de manera que sea más fácil de controlar el error que devuelve SQL Server cuando no existe. Esto es especialmente útil en los procesos de importación …

Ver Post

Diferencia entre fechas en SQL Server

En Bases de Datos, SQL Server por trellat0 Comentarios

En SQL Server  existe una función a la cual, pasándole dos fechas, devuelve la diferencia entre ellas. Esta función de diferencia entre fechas, se llama DATEDIFF y como peculiaridad entre otros motores de bases de datos, está que se puede definir la unidad de medida en la cual se devolverá el resultado (segundos, minutos, días, etc.). Esta función sólo está …