Con G de GNU

Archive for Abril, 2009

Conoce SQL – SELECT – Parte 3 – Agrupaciones

por Maxpowel el Abr.29, 2009

En esta tercera parte de select veremos qué son y cómo se usan las agrupaciones de datos.

Vamos a empezar por lo más sencillo. Imagina que queremos contar el numero de filas de una tabla, por ejemplo para saber cuantos usuarios tenemos o el numero de paquetes en nuestra base de datos. Si no se conce como sql nos lo hace, lo normal es tirar por algo de esto desde php:

$sql=”SELECT * FROM paquetes”;
$res=mysql_query($sql);
$n=0;
while ($fila=mysql_fetch_array($res))
{
$n++;
}
echo “Tenemos $n paquetes en la base de datos”;

Quizá a estas alturas ya te hayas percatado (aunque sea porque siempre digo lo mismo :P ) de lo ineficiente que es este algoritmo. Seleccionamos TODO cuando no nececitamos NADA, no necesitamos ningún dato de la tabla pero sin embargo vamos a ir extrayendo toda la tabla. Para esto existe count, que se usaría de esta manera:

$sql=”SELECT count(*) FROM paquetes”;
$res=mysql_query($sql);
$fila=mysql_fetch_array($res);
echo “Tenemos “.$fila[0].” paquetes en la base de datos”;

(continuar leyendo…)

2 Comentarios Guias y manuales more...

Manda un Email a los eurodiputados contra la regulación del p2p

por DiCrEn el Abr.27, 2009

cartel_welovep2pDesde blackouteurope se ha organizado una campaña de envío de cartas a Europarlamentarios, y desde ConGdeGNU queremos aportar nuestro granito de arena insertando un formulario que nos facilita hacktivistas.net, que se ha unido a la causa.

Ahora mismo ya son mas de 200.000 los emails enviados en 48 horas, puedes ver las estadisticas desde aquí.

Gasta 5 minutos de tu tiempo en rellenar el siguiente formulario, si los lobbies de la industria cultural pueden protestar, los consumidores y creadores de la cultura también.

Rellena el siguiente formulario
Rellenando el siguiente formulario puedes enviar un mensaje a los 54 eurodiputados españoles en relación a la Carta abierta al Parlamento Europeo. Escríbeles lo que consideres oportuno pero sé respetuoso, sólo de esta manera nuestras peticiones serán escuchadas.

Nombre:
E-mail:
Asunto:
Mensaje:

Política de Privacidad

xmailer copyleft Isaac Hacksimov 2009, licencia GPLv3, powered by Hacktivistas.net

via | menéame

Dejar un comentario Mundo real, internet more...

Conoce SQL – SELECT – Parte 2

por Maxpowel el Abr.26, 2009

En la primera parte sobre SELECT vimos básicamente como enlazar diferentes tablas y así aprovecharnos de las foreign key. Eso es lo mínimo que se debería saber ya que conociendo un poco por encima ese tema podemos hacer consultas bastante majas sin recurrir a complejos e ineficientes algoritmos en PHP.

Pero pronto vemos que se nos queda corto y queremos más pero que no cunda el pánico, aquí hay SQL para todos. En esta segunda parte de SELECT quiero tratar las subconsultas

Vaya, parece poco pero es más de lo que parece.
(continuar leyendo…)

Dejar un comentario Guias y manuales more...

Conoce SQL – SELECT – Parte 1

por Maxpowel el Abr.23, 2009

Conoce SQL – DQL – Parte 1

Todo lo visto hasta ahora entra en la parte DDL (Lenguaje de Definición de Datos). Esa parte es las más sencillita. Ahora comenzamos con el DQL (Lenguaje de Consulta de Datos). DQL es sin duda la parte más compleja y divertida de SQL y es la que nos permite sacar datos de la base de datos.

Normalmente en los ejemplos que se ven por ahí se usan consultas sencillas del tipo

SELECT * FROM usuarios WHERE email=’usuario@correo.com’

y rara vez he visto una consulta juntandos varias tablas o usando funciones de MySQL, algo que esconde totalmente la potencia de este lenguaje.

(continuar leyendo…)

Dejar un comentario Guias y manuales more...

Conoce SQL – Restricciones – FOREIGN KEY

por Maxpowel el Abr.16, 2009

1 – E: Restricción FOREIGN KEY

Las foreign key o clave foránea es de las cosas que más juego da a la hora de hacer consultas. Esto es porque relacionan directamente elementos de diferentes tablas. Esta restricción sin duda es la que más ayuda al ahora de mantener la integridad de los datos y asegurarnos de que no queda ni basura cuando borramos datos ni tampoco datos “perdidos” por la base de datos.

Un ejemplo: En la tabla paquetes usada anteriormente queremos saber a qué ciudad se envían (antes no sé como llegarían los paquetes). Tenemos dos opciones (una buena y una mala). La mala seria insertar una nueva columna de tipo varchar que ponga “Palencia”, “Valladolid” o la ciudad que sea. Esto es un claro ejemplo de redundancia ya que la palaba “Palencia” se repetirá bastantes veces (sí, es una ciudad pequeña pero algún paquete llegará ¿no?). Además sería muy poco fiable hacer búsquedas para saber que paquetes han mandando a una ciudad ya que un puede escribir “Palencia” otro “palencia” o cualquier cosa vete tu a saber (el usuario es imprevisible) además del curro que le mandamos hacer la base de datos. Recordemos que buscar por palabras es lo mas costoso así que cuanto más lo evitemos más rápido funcionará la base de datos. Para estas cosas se inventaron las claves foráneas que en este caso consistiría básicamente en tener una tabla solo para las ciudades y otra para los paquetes y estas dos enlazadas.

(continuar leyendo…)

7 Comentarios Guias y manuales more...

¿Buscando algo?

Usa el formulario de debajo:

¿Sigues sin encontrar lo que buscas? ¡Deja un comentario o ponte en contacto con nosotros para que lo encontremos por ti!