Logo

Complementos y nuevas tendencias en la programación web

Manuales web avanzados

Por Anyelguti

Este curso forma parte del proyecto Aprende Web

logo

SQL III

Bases y Tablas

Sentencias para bases de datos.

Mostrar bases de datos

El lenguaje SQL dispone de varias sentencias para manejar las bases de datos. En primer lugar podemos ver todas las bases de datos guardadas en el programa de almacenamiento, en nuestro caso MySQL, mediante la sentencia:

SHOW DATABASES;

En PHP utilizaremos para obtenerlas el puntero interno de la función mysql_fetch_array() u otra similar. como por ejemplo en el siguiente código:

$db=mysql_connect("localhost","root","");
$sql="SHOW DATABASES;";);
$datos=mysql_query($sql,$db);
mysql_close($db);
while ($row=mysql_fetch_assoc($datos)) {
    foreach ($row as $clave=>$valor) {
       echo "$valor. <br/>";
       }
    }

Crear nueva base de datos

Para crear una nueva base de datos utilizamos la siguiente sentencia:

CREATE DATABASE nombre_base;

Donde nombre_base es el nombre que le daremos a la nueva base de datos. El nombre identifica a la base de datos por lo que no puede haber dos o más bases con el mismo nombre. Si el nombre que indicamos ya existiera la instrucción será ignorada y no se creará ninguna base.

En el presente manual vamos a utilizar una base de ejemplo que iremos utilizando para ilustrar las distintas sentencias que vayamos viendo. empezamos por crear una base de datos que llamaremos "mi_musica". Utilizamos el siguiente código:

$db=mysql_connect("localhost","root","");
$sql="CREATE DATABASE mi_musica;"; 
mysql_query($sql,$db);
mysql_close($db);

Hemos creado una nueva base de datos que de momento está vacía ya que no tiene ninguna tabla ni ningún dato almacenado. A lo largo de éste manual iremos creando las tablas y añadiendo datos a esta base.

Para comprobar que la base de datos se ha creado podemos usar la instrucción anterior de SHOW DATABASES; o podemos abrir el "phpMyAdmin" (suponiendo que trabajemos con MySQL y PHP) y comprobar que la base de datos esta ahí.

Eliminar bases de datos

Podemos eliminar una base de datos existente en nuestro servidor. para ello utilizaremos la siguiente sentencia:

DROP DATABASE nombre_base;

Atencion: La eliminacion de una base de datos conlleva la eliminacion de todas las tablas y datos que hay en ella de forma irreversible. Es decir una vez eliminada una base de datos no podemos recuperar los datos que ahí hemos puesto, a no ser que antes los hayamos copiado a otro lado.

Si la base de datos indicada no existe el programa no hace nada. es decir, esta sentencia es ignorada.

Supongamos que hemos creado una base de datos de prueba mediante:

CREATE DATABASE pruebas;

Y una vez acabadas las pruebas queremos eliminarla. El código PHP será el siguiente:

$db=mysql_connect("localhost","root","");
$sql="DROP DATABASE pruebas;"; 
mysql_query($sql,$db);
mysql_close($db);

Manejar tablas

Mostrar tablas de una base

Las tablas son los elementos esenciales donde guardar los datos. Como ya se ha explicado las tablas se componen de campos o columnas y registros o filas. Vamos a ver en principio cómo mostrar las tablas que tiene una base de datos.

Si trabajamos con PHP hay que tener en cuenta que para manejar una tabla o cualquier otro elemento que esté dentro de una base de datos, después de abrir la conexion al servidor, lo primero que tenemos que hacer es seleccionar la base de datos mediante:

mysql_select_db("pruebas",$db);

Donde "pruebas" es el nombre de la base de datos, y $db la conexión al servidor.

Una vez seleccionada la base de datos, se puede mostrar el nombre de todas las tablas con la sentencia SQL:

SHOW TABLES;

La forma de sacar los datos en pantalla o guardarlos mediante PHP es similar a la sentencia SHOW DATABASES, vista anteriormente, es decir mediante una función del tipo mysql_fetch_array() y el bucle while.

Crear tablas

Para crear una nueva tabla en una base de datos emplearemos la sentencia CREATE TABLE seguida del nombre de la tabla, y luego entre paréntesis tenemos que poner al menos un campo de la tabla.

Anteriormente hemos empezado a crear una base de datos que nos servirá de ejemplo para este manual, llamada "mi_musica". Ahora crearemos una tabla para esta base , que se llamara "artistas":

CREATE TABLE artistas (id_artista, int);

En la sentencia anterior las palabras clave CREATE TABLE indican que creamos una nueva tabla. indicamos seguidamente el nombre de la tabla artistas. No podemos crear una tabla vacía, ésta debe tener al menos una columna. lo escrito entre paréntesis (id_artista int) nos crea una primera columna llamada id_artista, cuyo tipo de datos serán números enteros (int). De momento no nos preocupamos de más, ya que más adelante se verá en este manual cómo introducir las columnas en las tablas (bien sea al crearlas o más adelante).

El código PHP que nos crea la nueva tabla será algo así:

$db=mysql_connect("localhost","root","");
mysql_select_db("mi_musica",$db); 
$sql="CREATE TABLE artistas(id_artistas int);";
mysql_query($sql,$db);
mysql_close($db);

Hemos creado una tabla para la base de datos "mi_musica". Sólo tiene una columna donde se pondrá un número que indentifique a cada registro. En las bases de datos es normal que en cada tabla tengamos una primera columna que identiifique mediante un número a cada registro.

Si ya existe una tabla con ese nombre la sentencia se ignora y no se crea ni se sustituye ninguna tabla.

Eliminar tablas

Eliminar una tabla conlleva eliminar tambien de forma permanente e irreversible todos los datos almacenados en ella. Antes de eliminar una tabla debemos asegurarnos de que queremos eliminar también los datos guardados, o haberlos traspasado a otra tabla.

La eliminación de una tabla se hace mediante la sentencia:

DROP TABLE nombre_tabla

Por ejemplo suponemos que hemos creado una tabla llamada "mis_pruebas1" en una base de datos llamada "pruebas". y después de un un tiempo queremos eliminarla. el código PHP será el siguiente:

db=mysql_connect("localhost","root","");
mysql_select_db("pruebas",$db); 
$sql="DROP TABLE mis_pruebas1;";
mysql_query($sql,$db);
mysql_close($db);

Con esto borramos la tabla de la base de datos, y con ella todos los datos que ésta contiene de manera irreversible.

Si la tabla indicada no existe, la sentencia es ignorada, y no se realiza ninguna acción.

Vaciar tablas

Pero si lo que queremos no es eliminar la tabla, sino eliminar sólo los datos de la tabla, manteniendo la estructura de la tabla, es decir borrar los datos y mantener la tabla vacía utilizaremos la sentencia TRUNCATE. En el código PHP anterior cambiamos la sentencia SQL por:

TRUNCATE mis_pruebas1

Donde "mis_pruebas1" es el nombre de la tabla que queremos vaciar.






En la próxima página veremos cómo construir una tabla,y cómo insertar campos y registros

Construir una tabla.



Manual SQL

Anterior siguiente     Siguiente siguiente

Ver estadísticas

Free counter and web stats
Visita nuestro foro:

Puedes consultar tus dudas y sugerencias:

sobre el foro (info y entrar)

Página creada por ANYELGUTI.

Manda tus sugerencias:
aprendeweb@ymail.com ... manda un correo