Archivo para la etiqueta ‘MYSQL’

24Feb
2009
Comments Off

Realizar gráficas con MySQL y Google Graph

Buen ejemplo para obtener la URL que nos dibuja gráficas usando Google Graph mediante procedimientos almacenados de MySQL. Está sacado de este ejemplo, que a su vez está sacado de este otro para Oracle. DELIMITER $$ DROP FUNCTION IF EXISTS `dm_midas`.`FNC_GOOGRAPH_DB_SIZE`$$ CREATE FUNCTION `dm_midas`.`FNC_GOOGRAPH_DB_SIZE` ( p_chart_type CHAR, p_height INT, p_width INT) RETURNS varchar(3000) CHARSET latin1 [...]
18Feb
2009
Comments Off

Intercambiando el valor de columnas en MYSQL

Interesantes métodos para intercambiar el valor de dos columnas en MySQL. UPDATE swap_test SET x=y, y=@temp WHERE (@temp:=x) IS NOT NULL; Este método no funciona cuando alguna de las columnas tiene valor NULL, y los paréntesis son obligatorios. Otro método, que no tendría problemas con los NULL, sería: UPDATE swaptest s1, swaptest s2 SET s1.x=s1.y, [...]
03Feb
2009
Comments Off

Seleccionar cercanos mediante MySQL

En algunos casos tenemos la necesidad de buscar registros cercanos a un cierto valor (numérico, logicamente). Una solución sencilla es obtener el valor absoluto de la resta entre el valor que buscamos y el valor del registro, ordenar por ese valor y limitar la búsqueda a n registros: SELECT number, ABS( number – 2500 ) [...]
30Jan
2009
Comments Off

Obtener logs de todas las queries con MySQL 5.0

En algunas ocasiones necesitamos tener un log de todas las queries que se realizan, sobre todo en preproducción para poder tener una visión general de qué consultas se realizan y del coste. En MySQL 5.1 es sencillo porque se puede poner el tiempo máximo para slow queries a milisegundos, por lo que todas las queries [...]
22Jan
2009
Comments Off

Autosugerencias usando MySQL índices fulltext

Interesante seríe de tres artículos que nos muestra como crear un autosuggest tipo Google usando los índices full-text de MySQL. El método no es nada sencillo (php, mysql y listo), por lo que no será fácil probarlo, pero tampoco complicado o imposible (se necesita ser un usuario algo más avanzado). Se trata de coger el [...]
05Jan
2009
Comments Off

Curiosidades sobre TIMESTAMP en MySQL

Interesante lo que descubre uno sobre el TIMESTAMP en MySQL: Por defecto TIMESTAMP es NOT NULL, insertar un NULL hace que se almacene el DATETIME actual TIMESTAMP puede tener un valor entre ’1970-01-01 00:00:01′ y ’2038-01-19 03:14:07′ Solo la primera columna con NOT NULL puede tener por defecto la propiedad CURRENT_TIMESTAMP Cuando CURRENT_TIMESTAMP se indica [...]
24Nov
2008
Comments Off

Alternativa a MySQL Query Analyzer

MySQL ha lanzado su nueva versión de MySQL Query Analyzer dentro de MySQL Enterprise, de la cual hablan muy bien en casi todos los blogs. Para aquellos que usemos la versión Community, podemos usar una alternativa gratuita a esa herramienta. Para ello debemos instalar los parches que ofrece Percona los cuales, entre otras cosas, permiten [...]
20Nov
2008
Comments Off

Social Web: clon de Digg, Meneame o Reddit en PHP y MySQL

Social Web CMS es un sistema de noticias social al estilo de Digg o Menéame que está desarrollado en PHP y MySQL y que nos permite crear nuestro clon de forma sencilla. Permite la inserción de artículos por parte de los usuarios, votar los artículos, realizar comentarios, valorar los comentarios, buscar contenidos, obtener feeds para [...]
20Nov
2008
Comments Off

SQL injection cheatsheet

Interesante hoja de trucos para evitar SQL Injection en nuestras aplicaciones. La explicación es bastante intensa y no solo se centra en MySQL sino en otros motores como Microsoft SQL Server, ORACLE y PostgreSQL, aunque para estos últimas son pocos los consejos. SQL Injection Cheat Sheet
04Nov
2008
Comments Off

Automatic MySQL Backup

Automatic MySQL Backup es un script que nos permite realizar copias de seguridad de MySQL de forma automática. Ofrece las siguientes características: Realizar backups de múltiples bases de datos de MySQL en un único script. Posibilidad de realizar las backups de todas las BDs en un único fichero o separándolo en directorios y ficheros. Compresión [...]