Archivo

Archivo para la categoría ‘Bases de Datos’

No hay más soporte para PostgreSQL versiones 7.4 y 8.0

Jueves, 24 de junio de 2010 Sin comentarios

Al día de hoy, el equipo de desarrollo de PostgreSQL realizó la última actualización de seguridad y corrección de errores a las versiones 7.4 y 8.0 del motor de base de datos y anunció que: “recomienda que los usuarios que todavía usan estas versiones en producción empiecen a planear actualizarse a la última versión inmediatamente”. (Fuente: PostgreSQL)

Personalmente me agrada bastante la idea pues hay herramientas, funciones y características en general que no existen en esas versiones y cada vez se hace más difícil hacer que un sistema se totalmente compatible con esas versiones de PostgreSQL, además, de esa manera se puede concentrar el trabajo en potenciar la versión 9.0 que por cierto es bastante prometedora. En mi caso estoy usando la versión alpha.

¿Qué opinan de la determinación del equipo de de desarrollo de no mantener más esas versiones?

Categories: Bases de Datos Tags: ,

¿Cómo eliminar registros duplicados de una tabla en MySQL / MariaDB?

Miércoles, 12 de mayo de 2010 1 comentario

Acepto que este no es un problema al que me enfrento todos los días y menos en este gestor de bases de datos. En los demás motores como Oracle y PostgreSQL no había tenido ese problema (hasta donde recuerdo). Pero hoy tuve la necesidad de eliminar algunos registros duplicados de una tabla de un cliente (él deseaba eliminar los registros duplicados de sus clientes).

Al solicitarme el trabajo procedí a usar una sentencia del estilo:

DELETE FROM Customer cc
WHERE cc.email IN (
SELECT c.email
FROM Customer c
...
HAVING count(c.email)>1
)

Sencillo, práctico e intuitivo, ¿no? Le digo al gestor de base de datos que elimine los registros de la tabla Customer que tienen más de una incidencia. Pero tal fue mi sorpresa que me encontré con el siguiente error:

Error: #1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'cc WHERE cc.email IN (SELECT c.email FROM Customer c' at line 1

Y en algún momento me encontré con un error como:

#1093 - You can't specify target table 'Customer' for update in FROM clause

Así que entonces empezó la labor de investigación (¿o quise decir el dolor de cabeza?). Luego de visitar una buena cantidad de páginas web relacionadas, la documentación de MySQL (que por cierto no menciona qué hacer en esos casos), encontré que situaciones como la que necesitaba se resuelve con una eliminación relacional (algo que creo solo existe en MySQL/MariaDB). Para mi caso la consulta quedó así:

DELETE FROM Customer
USING Customer, Customer as c
WHERE (NOT Customer.id=c.id)
AND (Customer.email=c.email)


¿Alguna duda? Sé que no es tan intuitiva como la primera sentencia, pero luego de revisarla detenidamente tuvo sentido para mí. Básicamente lo que hace la sentencia es decir que elimine de Customer haciendo una relación con Customer (con la misma tabla) en donde el ID sea diferente y el email se igual.

Espero ahorrarles la búsqueda y desde luego dolores de cabeza.

Categories: Bases de Datos Tags:

PostgreSQL 9.0 Beta 1 ya está diponible para ser descargado y probado

Lunes, 3 de mayo de 2010 Sin comentarios

El primer lanzamiento oficial de la versión beta del motor de base de datos PostgreSQL versión 9.0 ya está disponible. La versión 9.0 es la priemra versión de PostgreSQL que incluye las librerías y los binarios necesarios para para replicación de bases de datos en tiempo con consultas escalables o scale-out, y que expandirá la adopción de PostgreSQL por parte de nuevos usuarios y para nuevos tipos de aplicaciones. Vale la pena probarla.

La noticia en PostgreSQL.org.

Categories: Bases de Datos Tags: ,

PostgreSQL 9.0 Alpha 4 disponible para descargar

Viernes, 26 de febrero de 2010 Sin comentarios

Desde el 24 de Febrero, el cuarto lanzamiento de la versión Alpha para PostgreSQL versión 9.0, 9.0alpha4, está disponible para ser descargada.

Esta versión alfa contiene una gran cantidad de nuevas características agregadas desde la versión alfa anterior. Pueden descargar, instalar, y probar esta versión aún en estado alfa del potente nuevo motor de PostgreSQL en su novena versión. Si tienen alguna observación pueden hacerla al equipo de desarrollo de PostgreSQL.
Estaremos probando las nuevas características y les estaremos contando.

Categories: Bases de Datos Tags:

Aero SQL: Sistema de Gestión de Bases de datos MySQL, una alternativa a phpMyAdmin

Martes, 23 de febrero de 2010 Sin comentarios

Navegando y leyendo noticias aquí y allá, me he encontrado con un sistema denominado AeroSQL que promete ser una alternativa profesional a entornos como phpMyAdmin, MySQL Query Browser, EMS SQL Manager for MySQL, y SQLyog, solo que funciona en entornos web, es decir, no importa en qué plataforma se requiere porque se ejecuta sobre un servidor web con soporte de PHP.
Mi primera impresión fue bastante agradable, porque luce bastante profesional y su interfaz me recuerda a la interfaz de EMS SQL Manager, además, permite editar los contenidos de las tablas directamente sobre las tablas mismas o sobre el resultado de las consultas SQL ejecutadas.

AeroSQL está desarrollado en PHP con el framework ExtJS (para AJAX), soporta conexiones a múltiples servidores y múltiples bases de datos, el entorno es bastante agradable y corre sobre cualquier servidor web. El entorno es bastante usable, aún carece de funciones importantes para su adminsitración como crear tablas, eliminar tablas, renombrar tablas (lo mismo para las bases de datos e índices). Personalmente lo encuentro bastante prometedor y no está mal exharle un ojo al progreso del desarrollo pues creo que ya es hora de analizar alternativas al amo y señor de la gestión de bases de datos MySQL phpMyAdmin.

La URL del proyecto: http://www.burlaca.com/aerosql/

Cuál su primera impresión? Qué tal les ha parecido?

Categories: Bases de Datos Tags: ,