miércoles, 9 de enero de 2013

MySQL desde la Terminal - PARTE 2


Siguiendo con el tutorial de“MySQL desde la terminal.” quiero aclararar un punto, en esta serie de articulos no pretendo abordar el Lenguaje de Consulta Estructurado SQL ( para interiorisarze en dicha materia pincha AQUÍ ), esto no quiere decir que ocupe algunas sentencias basicas de dicho lenguaje que son necesarias para la administracion de MySql.

2. Crear, Actualizar y Eliminar Tablas.

2.1 Crear y Visualizar Tabla.

 
Para crear una tabla, primero hay que situarse en una base de datos existente, para ello usaremos la base de datos llamada prueba creada en la Parte 1 de este tutorial.

Primero: Una vez dentro de mysql situarse en la base de datos prueba. 

mysql> use prueba;

Para visualizar las tablas ejecutar lo siguiente:

mysql> show tables;

no hemos creado ninguna tabla en prueba, por ende nos debe mostrar lo siguiente:

Empty set (0.00 sec)

Segundo: Procedemos a crear una tabla llamada personas dentro de la base de datos prueba, con la siguiente especificación.

La tabla personas tendra 2 atributos:

  • id : De tipo entero sin signo, autoincrementable, llave primaria.
  • nombre: De tipo varchar(caracter), longitud máxima de 30 caracteres y no nulo

mysql> CREATE DATABASE personas (
         -> id INT AUTO_INCREMENT PRIMARY KEY,
         -> nombre VARCHAR(30) NOT NULL
         -> );
Query OK, 0 rows affected (0.18 sec)

 
Tercero: Vizualiazar la tabla recientemente creada.

mysql> show tables;
+------------------+
| Tables_in_prueba |
+------------------+
| personas         |
+------------------+
1 row in set (0.00 sec) 

Cuarto: Ver estructura de la tabla personas.

mysql> describe personas;
+--------+-------------+------+-----+---------+----------------+
| Field  | Type        | Null | Key | Default | Extra          |
+--------+-------------+------+-----+---------+----------------+
| id     | int(11)     | NO   | PRI | NULL    | auto_increment |
| nombre | varchar(30) | NO   |     | NULL    |                |
+--------+-------------+------+-----+---------+----------------+
2 rows in set (0.00 sec)

2.2 Modificar y Eliminar Tablas


Primero: modificar la tabla personas, de modo que que el atributo de nombre id sea cambiado por identificador.
 
mysql> ALTER TABLE `personas` CHANGE `id` `iden` INT( 11 ) NOT NULL AUTO_INCREMENT;

Query OK, 0 rows affected (0.36 sec)

Luego visualizamos el cambio que acabamos de realizar.
 
mysql> describe personas;
+--------+-------------+------+-----+---------+----------------+
| Field  | Type        | Null | Key | Default | Extra          |
+--------+-------------+------+-----+---------+----------------+
| iden   | int(11)     | NO   | PRI | NULL    | auto_increment |
| nombre | varchar(30) | NO   |     | NULL    |                |
+--------+-------------+------+-----+---------+----------------+
2 rows in set (0.00 sec) 

Segundo: Agregar un atributo a la tabla personas, en este agregamos el atributo direccion.
 
mysql> ALTER TABLE personas ADD COLUMN direccion VARCHAR(40) NOT NULL;
Query OK, 0 rows affected (0.40 sec)

Ahora vemos como el atributo fono se encuentra en la estructura de la tabla personas.
 
mysql> describe personas;
+--------+-------------+------+-----+---------+----------------+
| Field  | Type        | Null | Key | Default | Extra          |
+--------+-------------+------+-----+---------+----------------+
| iden   | int(11)     | NO   | PRI | NULL    | auto_increment |
| nombre | varchar(30) | NO   |     | NULL    |                |
| fono   | varchar(10) | NO   |     | NULL    |                |
+--------+-------------+------+-----+---------+----------------+
3 rows in set (0.00 sec) 

Tercero: Para eliminar el atributo fono que acabamos de realizar.

mysql> ALTER TABLE personas DROP COLUMN fono;

Luego puedes visualizar el cambio con el comando describe.

2.3 Eliminar Tabla.

mysql> drop table personas;

Fín Segunda Parte, Me voy a dormir tranquilo.........

Nota: Cuando se trata de modificar atributos de la tabla personas, decidí colocar la sintaxis propia de MySql en mayuscula, con el fin de hacer una distinción con el nombre que nosotros  deseamos colocar a tablas o atributos.

 










1 comentario:

  1. buena compañero... buen tutorial... una pregunta... como logras una eliminación en cascada? teniendo varias tablas relacionadas?

    ResponderEliminar