Una mirada a SQL (II)

Bien para empezar a trabajar con SQL pedire unos cuantos requisitos. El primero sera la base de datos MySql, un servidor http como Apache con soporte para PHP y el sostema de gestion de base de datos PHPMyAdmin. Estos requisitos se pueden cumplir facilmente en la mayoria de las distribuciones de Linux y en Windows con los paquetes LAMP, uno que recomiendo es el appServer. Una vez instalado y configura entramos a la interfaz de PhpMyAdmin y observamos una parte de la ventana en el lado izquierdo como si fuera un menu y en la derecha la informacion del servidor SQL y muchos datos adicionales que sirven para la administracion. Por el momento nos fijaremos en la parte que dice “Bases de datos” casi al final de la lista.

Al entrar en esta parte podremos ver una lista con las bases de datos que existen y la codificacion de caracteres, este ultimo dato por el momento no nos debe preocupar. En la parte superior vemos la pestaña SQL y la seleccionamos, lo que nos muestra un cuadro de texto para ingresar nuestra consulta y un boton de confirmar para ejecutarla.

Empezaremos por crear nuestra base de datos de prueba con una expresion muy sencilla y de una vez aviso que SQL no distingue mayusculas de minusculas asi que el uso de cada tipo de letra es solo gusto personal.

CREATE DATABASE base_de_datos

Esta simple instruccion es tan facil y simple como parece. La instruccion creara una base de datos con el nombre que le pasamos como argumento. De esta manera vamos a base de datos y entramos a nuestra recien creada base de datos para  ver que esta se encuentra vacia, asi que lo siguiente que haremos sera crear tablas para ingresar nuestros datos.

Pensemos en el siguiente escenario: Nuestra base de datos nos servira para almacenar informacion relacionada con nuestro sistema de publicaciones en internet (aprovechando el PHP) y tenemos los siguientes datos: usuario, contraseña, id del usuario, mensaje, fecha del mensaje. Aqui no enseñare como organizar la base de datos pero en forma resumida podemos concluir que habra dos tablas de la siguiente forma:
Usuarios -> id,nick,pass
Publicaciones -> id,mensaje,fecha
Donde id se refiere al id del usuario y los demas campos son sencillos de razonar. Dada esta planificacion procederemos a crear las tablas.

En la nueva tabla habra columnas que pueden contener informacion de los tipos:

INTEGER Numeros enteros
VARCHAR(10) Cadena de hasta 10 caracteres
CHAR(10) Cadena de exactamente 10 caracteres
DATE Una fecha
TIMESTAMP Fecha y hora
FLOAT Numeros reales con punto decimal

Para crear las tablas usaremos la sentencia CREATE TABLE pasando como argumento el nombre de la tabla y un array asociativo con el nombre de las columnas y su tipo asi que vamos de nuevo al area de SQL y ejecutaremos nuestra sentencia. Los tipos char y varchar soportan hasta 255 caracteres.

CREATE TABLE usuarios (
  id INT AUTO_INCREMENT PRIMARY KEY ,
  nick VARCHAR( 30 ) ,
  pass VARCHAR( 30 )
  );
CREATE TABLE publicaciones (
 id INT ,
 mensaje VARCHAR( 255 ) ,
 fecha TIMESTAMP
 )

Y como podemos ver primeramente, pasamos dos sentencias separadas por un “;” ademas de observar dentro de PhpMyAdmin la consulta fue exitosa y ahora tenemos dos nuevas tablas dentro de la base de datos. Otro dato importante es que el uso de un elemento id nos hace pensar que este campo se debe rellenar de forma automatica cada vez que alguien ingrese a la base de datos por lo que usamos la propiedad AUTO_INCREMENT PRIMARY KEY que genera ese campo como un campo de autoincremento numerico, es decir, cada que se agrege un registro el id se incrementara en uno y esta propiedad nos hace tenerla como una llave primaria en la base de datos.

Por el momento dejaremos nuestra base de datos vacia y esperaremos a la siguiente mirada a SQL para aprender como rellenarla y manipular la informacion.

Anuncios

One thought on “Una mirada a SQL (II)

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s