![]() |
Despu�s de haber creado la tabla, ahora podemos incorporar algunos datos en ella, para lo cual haremos uso de las sentencias INSERT y LOAD DATA.
Supongamos que los registros de nuestras mascotas pueden ser descritos por los datos mostrados en la siguiente tabla.
Nombre | Propietario | Especie | Sexo | Nacimiento | Fallecimento |
---|---|---|---|---|---|
Fluffy | Arnoldo | Gato | f | 1999-02-04 | |
Mau | Juan | Gato | m | 1998-03-17 | |
Buffy | Arnoldo | Perro | f | 1999-05-13 | |
FanFan | Benito | Perro | m | 2000-08-27 | |
Kaiser | Diana | Perro | m | 1998-08-31 | 1997-07-29 |
Chispa | Omar | Ave | f | 1998-09-11 | |
Wicho | Tom�s | Ave | 2000-02-09 | ||
Skim | Benito | Serpiente | m | 2001-04-29 |
Debemos observar que MySQL espera recibir fechas en el formato YYYY-MM-DD, que puede ser diferente a lo que nosotros estamos acostumbrados.
Ya que estamos iniciando con una tabla vac�a, la manera m�s f�cil de poblarla es crear un archivo de texto que contenga un registro por l�nea para cada uno de nuestros animalitos para que posteriormente carguemos el contenido del archivo en la tabla �nicamente con una sentencia.
Por tanto, debemos de crear un archivo de texto "mascotas.txt" que contenga un registro por l�nea con valores separados por tabuladores, cuidando que el orden de las columnas sea el mismo que utilizamos en la sentencia CREATE TABLE. Para valores que no conozcamos podemos usar valores nulos (NULL). Para representar estos valores en nuestro archivo debemos usar \N.
El archivo mascotas.txt
Para cargar el contenido del archivo en la tabla mascotas, usaremos el siguiente comando:
mysql> LOAD DATA LOCAL INFILE "mascotas.txt" INTO TABLE mascotas;
La sentencia LOAD DATA nos permite especificar cu�l es el separador de columnas, y el separador de registros, por default el tabulador es el separador de columnas (campos), y el salto de l�nea es el separador de registros, que en este caso son suficientes para que la sentencia LOAD DATA lea correctamente el archivo "mascotas.txt".
Si lo que deseamos es a�adir un registro a la vez, entonces debemos hacer uso de la sentencia INSERT. En la manera m�s simple, debemos proporcionar un valor para cada columna en el orden en el cual fueron listados en la sentencia CREATE TABLE. Supongamos que nuestra hermana Diana compra un nuevo hamster nombrado Pelusa. Podemos usar la sentencia INSERT para agregar su registro en nuestra base de datos.
mysql> INSERT INTO mascotas
-> VALUES('Pelusa','Diana','Hamster','f','2000-03-30',NULL);
Notar que los valores de cadenas y fechas deben estar encerrados entre comillas. Tambi�n, con la sentencia INSERT podemos insertar el valor NULL directamente para representar un valor nulo, un valor que no conocemos. En este caso no se usa \N como en el caso de la sentencia LOAD DATA.
De este ejemplo, debemos ser capaces de ver que es un poco m�s la tarea que se tiene que realizar si inicialmente cargamos los registros con varias sentencias INSERT en lugar de una �nica sentencia LOAD DATA.
Cocina Facil | IngenieroSoftware.com |