Sentencia LOAD de MySQL y uso del terminador de línea

Última actualización el 26 de febrero de 2020 08:08:23 (UTC/GMT +8 horas)

Sentencia LOAD

La sentencia LOAD de MySQL rellena una tabla.

Supongamos que el usuario tiene un archivo .txt de nombre ‘pub.txt’ en una carpeta propia, que contiene 1 registro por línea y está separado por tabulaciones y dispuesto en orden como las columnas que aparecen en la tabla. Puede utilizar la sentencia LOAD para rellenar la tabla. Para los valores que faltan, el usuario puede utilizar valores NULL y eso debe ser representado por ‘\NN en el archivo de texto.

Sintaxis:

LOAD DATA LOCAL INFILE '' INTO TABLE ;

Argumentos

Nombre Descripción
ruta La dirección del fichero.
nombre_del_archivo El nombre del archivo .txt.
nombre_tabla La tabla donde se cargarán los datos.

Ejemplo:

En el siguiente código se cargará el contenido del archivo de texto pub.txt en la tabla de editores.

Hay que mencionar la ruta del archivo.

El archivo de texto contiene la fila como.

P002<tab>BPP Publication<tab>Mumbai<tab>India<tab>New Delhi<tab><tab>1985-10-01

Código:

LOAD DATA LOCAL INFILE 'pub.txt' INTO TABLE publisher;

Tabla de ejemplo: editor

Sentencia LOAD de MySQL con terminador de línea

Las sentencias LOAD de MySQL con ‘\r\n’ como terminador de línea también pueden utilizarse para poblar una tabla.

Ejemplo:

El siguiente código cargará los registros del archivo pub.txt en la tabla publisher. Se puede utilizar la figura como terminador de línea.

El archivo de texto contiene la fila como.

P002<tab>BPP Publication<tab>Mumbai<tab>India<tab>New Delhi<tab><tab>1985-10-01\r\n

Tabla de muestra: publisher

Código:

LOAD DATA LOCAL INFILE 'path/pub.txt' INTO TABLE publisherLINES TERMINATED BY \r\n ;

MySQL cargando datos en una tabla con sentencia insert

Para insertar nuevos registros en una tabla se puede utilizar la sentencia INSERT. Los valores serán suministrados por el usuario en el mismo orden en que las columnas están listadas en la tabla. Es necesario especificar los valores de las cadenas y de las fechas dentro de una cadena entrecomillada.

Sintaxis

INSERT INTO <table_name> values(value1,value2,....);

Argumentos

Nombre Descripción
nombre_tabla Nombre de la tabla.
valor1,valor2,… Valores que se insertarán en la secuencia de columnas.

Ejemplo:

La siguiente sentencia inserta una fila en la tabla ‘publisher’ que contiene los valores según la secuencia de las columnas.

Tabla de ejemplo: publisher

Código:

INSERT INTO publisher values(‘P010’,’ Novel Publisher Ltd.’,’ mumbai’,’ India’,’ hydrabad’);

MySQL importar datos desde csv usando LOAD DATA INFILE

Se pueden importar datos desde un fichero CSV a una tabla MySQL. Aquí están la estructura de la tabla MySQL y el CSV

Estructura de la tabla MySQL:

Muestra de salida:

MySQL> describe std;+--------+-------------+------+-----+---------+-------+| Field | Type | Null | Key | Default | Extra |+--------+-------------+------+-----+---------+-------+| rollno | int(11) | NO | PRI | NULL | || class | varchar(15) | YES | | NULL | || name | varchar(45) | YES | | NULL | |+--------+-------------+------+-----+---------+-------+3 rows in set (0.01 sec)

Detalles del archivo CSV (book1.csv) :

Nombre,Clase,ROLLNO
David,V,9
Subir,Vii,12
Taniya,VI,10
Anish,V,14

Salida de ejemplo:

MySQL> LOAD DATA LOCAL INFILE 'book1.csv' INTO table std FIELDS TERMINATED BY ',' ENCLOSED BY '"' LINES TERMINATED BY '\r\n' IGNORE 1 LINES (name, class, rollno);Query OK, 4 rows affected (0.04 sec)Records: 4 Deleted: 0 Skipped: 0 Warnings: 0MySQL> SELECT * FROM std;+--------+-------+--------+| rollno | class | name |+--------+-------+--------+| 9 | V | David || 10 | VI | Taniya || 12 | Vii | Subir || 14 | V | Anish |+--------+-------+--------+4 rows in set (0.00 sec)

Anterior: BASE DE DATOS MySQL
Siguiente: MySQL advance creando tabla MySQL Constraints

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *