Archivo de la etiqueta: Bases de datos

Aprende a usar MongoDB

¿Que es MongoDB?

Si buscamos en la wikipedia nos dice:

MongoDB (de la palabra en inglés “humongous” que significa enorme) es un sistema de base de datos NoSQL orientado a documentos, desarrollado bajo el concepto de código abierto.

MongoDB forma parte de la nueva familia de sistemas de base de datos NoSQL. En vez de guardar los datos en tablas como se hace en las base de datos relacionales, MongoDB guarda estructuras de datos en documentos tipo JSON con un esquema dinámico (MongoDB llama ese formato BSON), haciendo que la integración de los datos en ciertas aplicaciones sea más fácil y rápida.

Es decir es un sistema de base de datos en el cual no se usa SQL para acceder a el y guarda los datos en documentos.

Si quereis podeis aprender a usarlo aquí http://try.mongodb.org

Mas información:  http://www.mongodb.org http://es.wikipedia.org/wiki/MongoDB

Regla de la suma en bases de datos – MySQL Tips

Esta entrada no es específicamente para bases de datos MySQL, y se puede aplicar a cualquier otra base de datos.

Este es un pequeño truco que utilizo a la hora de explicar a alguien como decidir que tipo de dato a establecer a la hora de crear campos en una tabla en una base de datos, y es hacernos la siguiente pregunta ¿vas a sumarlo?, si la respuesta es no el tipo de campo puede establecerse de tipo varchar y si vamos a sumarlo sera de tipo numérico. Por ejemplo, los códigos postales o los teléfonos, ¿vamos a sumar códigos postales o teléfonos? la respuesta es no, por lo tanto los pondremos como tipo varchar, además en el tema de los códigos postales no hay tanto problema pero en el tema de los teléfonos… cada usuario te lo puede poner de cualquier manera, y si ponemos controles de validación del teléfono, pero al final lo que queremos es tener el teléfono del usuario.

Uso de expresiones regulares en MySQL – MySQL Tips

Una de las características poco conocidas en en el uso de sentencias en MySQL es el uso de expresiones regulares.

Imaginemos la siguiente situación:

Tenemos una tabla de paises y uno de los campos es nombre, y queremos crear una consulta que nos devuelva todos los paises que empiezan por A, C y R. Si lo realizamos sin expresiones regulares lo realizaríamos de la siguiente forma:


SELECT * FROM paises WHERE nombre LIKE 'A%' OR 'C%' OR 'R%'

Imaginaros esta consulta para mas iniciales, todo seria una secuencia de OR inicial. En cambio si usamos expresiones regulares quedaria de la siguiente manera


SELECT * FROM PAISES WHERE nombre RLIKE '^[A|C|R]'

Como podéis ver la consulta se reduce bastante, el RLIKE indica que se va a usar una expresión regular, el símbolo ^ indica que es el principio de cadena y entre [] ponemos las distintas variaciones separadas por |.

Si por ejemplo quisieramos todos los paises

http://dev.mysql.com/doc/refman/5.0/es/regexp.html