====== Dentro de MySQL - Cargando datos en una Tabla ====== ==== Introducción ==== En esta sección veremos 2 formas de cargar datos en una tabla, utilizando dos comandos de **MySQL**, estos son : - **LOAD DATA**, que permite cargar datos desde un archivo .txt - **INSERT**, que permite en linea de comandos introducir directamente los datos en la tabla. ---- ==== Cargando Datos ==== Supongamos que los registros de nuestras aseguradoras pueden ser descritos por los datos mostrados en la siguiente tabla : \\ ^ Código ^ Nombre ^ Dirección ^ Telefono ^ Mail ^ Website ^ | 1 | RSA Seguros S.A. | Peatonal Sarandi 620 | 29161345 | contact@rsa.com.uy | rsaseguros.com.uy | | 2 | B.S.E. | Libertador 12345 | 29008765 | contacto@bse.com.uy | bse.com.uy | | 3 | Mapfre Uruguay | Bulevar Artigas 765 | 27098743 | info@mapfre.com.uy | mapfre.com.uy | | 4 | Sancor Uruguay | 25 de Mayo 560 | 29154786 | informacion@sancor.com.uy | uy.sancor.com.ar | Dado 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 una de nuestras empresas, para que, posteriormente, carguemos el contenido del archivo en la tabla únicamente con una sentencia. Por lo tanto, debemos de crear un archivo de texto **aseguradoras.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 para 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 **aseguradoras.txt** contendrá : 1 RSA Seguros S.A. Peatonal Sarandi 620 29161345 contact@rsa.com.uy rsaseguros.com.uy 2 B.S.E. Libertador 12345 29008765 contacto@bse.com.uy bse.com.uy 3 Mapfre Uruguay Bulevar Artigas 765 27098743 info@mapfre.com.uy mapfre.com.uy 4 Sancor Uruguay 25 de Mayo 560 29154786 informacion@sancor.com.uy uy.sancor.com.ar Para cargar el contenido del archivo en la tabla **aseguradoras**, usaremos el siguiente comando : mysql< LOAD DATA LOCAL INFILE "aseguradoras.txt" INTO TABLE aseguradoras; La sentencia **LOAD DATA** nos permite especificar cuál es el separador de columnas, y el separador de registros, por defecto el tabulador es el separador de columnas (campos), y el salto de línea es el separador de registros. En este caso ejemplo, estos valores por defecto son suficientes para que la sentencia **LOAD DATA** cargue correctamente el archivo **aseguradoras.txt** Si lo que deseamos es añadir un registro a la vez, entonces debemos hacer uso de otra sentencia, el **INSERT**. En su manera más simple, debemos proporcionarle un valor para cada columna (campo), en el orden en cual fueron listados en la sentencia **CREATE TABLE**. mysql< INSERT INTO aseguradoras -> VALUES(5,'Chartis','Colonia 1034',29008743,'info@chartis.com',NULL); Debemos aclarar que los valores de las cadenas (strings) y de las fechas, deben estar encerrados entre comillas. También, con la sentencia **INSERT** podemos insertar el valor **NULL** directamente para representar un valor nulo, o sea un valor que no conocemos.\\ En este caso no se usa **\N** como en el caso de la sentencia **LOAD DATA**. \\ ------ \\ [[:indice|Retorno a página principal]]\\ [[acemu:articulos:articulos_tecnicos:software:introduccion_a_las_bases_de_datos_con_mysql:tutorial|Retorno a Página Anterior]]