1 0 Archive | Bases de Datos RSS feed para esta categoría
post icon

Obtener un registro de la base de datos aleatoriamente mediante SQL

Si lo que necesitas es obtener una o un par de filas de tu base de datos de manera “randomica”  existen muchas soluciones que se pueden implementar, desde hacer un “select silvestre” y desde alguna aplicación que utilice algoritmos que permitan seleccionar un registro de manera aleatoria, hasta “cocinarlo” en desde la misma base de datos.

Dependiendo el contexto de trabajo es conveniente elegir una opción u otra. Pero ésta vez quiero centrarme más bien en hacer el trabajo desde la Base de Datos, con un Query SQL para los distintos (Continuar Leyendo sobre Obtener un registro de la base de datos aleatoriamente mediante SQL)

post icon

Cual es la diferencia entre un Unique Index y Unique Constraint

Tanto desarrolladores como DBA’s  en algún momento nos llegamos a preguntar cual es la diferencia entre el Unique Constraint y el Unique Index, en gran manera ambos cumplen con la misma función y en la práctica en el 99%  de los casos no habrá diferencia si usamos uno u otro para impedir que se dupliquen valores en una o más columnas que componen al objeto.

De hecho que al crear el Unique Constraint el mismo crea por debajo otro Indice Unico nonclustered automáticamente. (Continuar Leyendo sobre Cual es la diferencia entre un Unique Index y Unique Constraint)

post icon

Reducir el uso de la memoria RAM de SQL Server en caliente sin reiniciar el servicio

Leyendo mis RSS vi un artículo en grimpidev.wordpress.com que me gustó, sobre como liberar el consumo de la memoria RAM que utilizar el servicio de SQL Server.

Si bien es cierto que no es una función diseñada para tal efecto se puede utilizar como artificio para lograr éste objetivo, y me ha parecido muy original la manera que lo desarrollaron. La misma consiste básicamente en establecer el límite máximo a utilizar de RAM por el servicio en un valor bastante bajo obligandole al motor a liberar el recurso, y luego volviendo a establecer en su valor original. Son bien recibidos otros concejos y técnicas en los comentarios. (Continuar Leyendo sobre Reducir el uso de la memoria RAM de SQL Server en caliente sin reiniciar el servicio)

post icon

Como utilizar la cláusula OVER [Partition By / Order by] en SQL [Optimización]

Ver query’s con la cláusula OVER no es muy común, normalmente la mayoría de los programadores o DBA crean sub-query’s para obtener los mismos resultados, lo que en sí no es malo ya que logran visualizar los mismos datos. El problema principal se encuentra en el rendimiento que tiene uno y otro método.

El motor que sea que estés utilizando optimiza el tiempo de ejecución y los bloqueos de las filas cuando se escribe scripts con OVER ya que el mismo trabaja sobre los datos ya obtenidos, en vez de volver a recuperarlos de origen.

La cláusula OVER está definida en el estándar ISO de SQL, (Continuar Leyendo sobre Como utilizar la cláusula OVER [Partition By / Order by] en SQL [Optimización])

post icon

Configurar el Cliente-SDK de Informix en Windows

Si tienen como back-end en su sistema el motor de IBM, Informix y desarrollarán el front-end con cualquier lenguaje en el sistema operativo (Windows, Linux, Solaris, HP-UX, etc) necesitarán configurar manualmente en cada uno de ellos el Cliente-SDK.

En ésta ocasión veremos como hacerlo sobre MS Windows, no es una tarea difícil para nada pero no tan sencillo como se hace con MSSQL, PostgreSQL, etc. Los que llegaron a trabajar con conexiones ODBC en algún momento verán cierta similitud. (Continuar Leyendo sobre Configurar el Cliente-SDK de Informix en Windows)

post icon

Insertar datos desde un csv a mysql con java

A continuacion veremos una forma sencilla, para insertar o actualizar los datos en una db mysql desde un archivo csv para ello necesitaremos una librería externa que pueden descargarla desde aqui:
http://oss.mars.asu.edu/trac/jmars/browser/trunk/lib/javacsv.jar?rev=1
Para esto supongamos que nuestro archivo csv este ordenado asi:

100,"Juan","Gonzalez",123454,"5ta avenida c/Artigas 1560","59521-345445";

Con este ejemplo nosotros insertamos y actualizamos los datos en la db por medio de procedimientos almacenados. El nombre de los sp pueden variar, y la logica es casi lo mismo para insertar o actualizar en otros motores de bases de datos.

(Continuar Leyendo sobre Insertar datos desde un csv a mysql con java)

post icon

Configurar acceso remoto a la pág. http de la base de datos Oracle 10g, en un servidor Linux sin entorno grafico

Antes que nada quiero agradecer al Ing. Luis Cardozo, por su colaboración a la solución de este problema.

Por si alguna vez les toque instalar el motor de base de datos Oracle 10g, en un servidor Linux sin entorno grafico.

Esto esta probado en un servidor ubuntu, pero puede ser compatible en las demas versiones de linux (opensuse, mandriva, etc).

Primero nos aseguramos que las variables de entorno del oracle esten declaradas, si no estan declaradas ejecutamos en la consola esto:

export LANG=en_US.UTF8
export ORACLE_HOME=/usr/lib/oracle/xe/app/oracle/product/10.2.0/server/bin
export ORACLE_SID=XE
export PATH=$ORACLE_HOME/bin:$PATH
export LIBPATH=$LIBPATH:$ORACLE_HOME/lib:/usr/local/lib

luego por medio del sqlplus nos conectamos a la db.

sqlplus sys as sysdba (Continuar Leyendo sobre Configurar acceso remoto a la pág. http de la base de datos Oracle 10g, en un servidor Linux sin entorno grafico)

post icon

Como saber cuando fue el último acceso a una Base de Datos SQL Server

Conocer cuando fue la ultima vez que se accedió a una base de datos en SQL Server no es una tarea fácil de resolver, ya que no hay un valor que sirva específicamente para eso, si es que no llevamos un sistema de auditoría a la par.

Otra manera es ver el registro del transaction log de la base de datos, aunque la misma es muy dificil de interpretar, a parte que son funciones de SQL Server no documentadas por Microsoft y para peor de todo están almacenadas en un formato propietario. (Continuar Leyendo sobre Como saber cuando fue el último acceso a una Base de Datos SQL Server)

post icon

Como depurar en SQL Server 2008 paso a paso: Procedimientos almacenados, triggers y funciones

En el articulo anterior veiamos un mini-tutorial de como depurar en SQL Server 2005. Ahora veremos como hacerlo con SQL Server 2008. Aunque es posible hacerlo del mismo modo, con Visual Studio. La nueva versión nos permite ya depurar desde el SQL Server Management Studio directamente (una caracteristica más que útil y que implorabamos hace años).

La primer diferencia es más que reconocible, ya que se agrega un nuevo menú dentro del SSMS como ven aquí: (Continuar Leyendo sobre Como depurar en SQL Server 2008 paso a paso: Procedimientos almacenados, triggers y funciones)

post icon

Como depurar en SQL Server 2005 paso a paso: Procedimientos almacenados, triggers y funciones

Para todo programador es un paso vital conocer como depurar su software, para la gente que desarrolla con herramientas de Microsoft ésta tarea es bastante sencilla la mayoría de las veces. Especialmente si se trata de depurar las aplicaciones construidas con Visual Studio.

El mayor de los problemas surge cuando hay que depurar objetos de la base de datos, especificamente SQL Server. Para los que en algún momento llegamos a utilizar la versión 2000, el mismo traía un depurador en el Analizador de Querys. Aunque un poco rustico, lo tenía. Cuando salío la versión 2005 del motor, ésta opción fue sacada del producto (Continuar Leyendo sobre Como depurar en SQL Server 2005 paso a paso: Procedimientos almacenados, triggers y funciones)