Cómo exportar una tabla a CSV en MySQL

How Export Table Csv Mysql



El archivo CSV es un formato de archivo de texto muy común que es compatible con muchas aplicaciones. La forma completa de CSV es valores separados por comas. Eso significa que los datos están separados por una coma en cada línea de este archivo. Se utiliza principalmente para intercambiar datos tabulares entre diferentes tipos de aplicaciones que admiten este formato de archivo. XML es otro formato de archivo que se usa comúnmente para intercambiar datos entre aplicaciones. Pero el archivo CSV es una mejor opción que el archivo XML, porque ocupa menos espacio y ancho de banda que un archivo XML. Necesita exportar datos en formato CSV desde una aplicación antes de importar los datos a otra aplicación. MySQL admite varias formas de exportar datos de tablas de bases de datos. El formato CSV es una forma de hacerlo. Este artículo muestra diferentes formas de exportar datos en formato CSV desde la tabla de la base de datos MySQL.

Requisito previo:

Antes de ejecutar cualquier declaración de exportación, debe crear una nueva base de datos y tablas o seleccionar una base de datos y tablas existentes. Ejecute los siguientes comandos para crear un Biblioteca base de datos y tres tablas con el nombre libros, prestatarios y book_borrow_info .







CREAR BASE DE DATOS Biblioteca;
USAR Biblioteca;

CREAR MESA libros(
identificación EN T NO NULO AUTOINCREMENTO ,
título varchar (50) NO NULO ,
autor varchar (50) NO NULO ,
editor varchar (50) NO NULO ,
CLAVE PRIMARIA (identificación)
) MOTOR = INNODB ;

CREAR MESA prestatarios(
identificación VARCHAR (50) NO NULO ,
nombre varchar (50) NO NULO ,
Dirección varchar (50) NO NULO ,
Email varchar (50) NO NULO ,
CLAVE PRIMARIA (identificación)
);

CREAR MESA book_borrow_info(
préstamo_id VARCHAR (50),
book_id EN T ,
pedir prestado FECHA NO NULO ,
Fecha de regreso FECHA NO NULO ,
estado VARCHAR (15) NO NULO ,
ÍNDICE par_ind(book_id),
CLAVE PRIMARIA (préstamo_id,pedir prestado),
CLAVE EXTERNA (book_id) REFERENCIAS libros(identificación)
SOBRE ELIMINAR CASCADA
SOBRE ACTUALIZAR CASCADA );

Ejecute los siguientes comandos SQL para insertar algunos datos en tres tablas.



INSERTAR DENTRO libros VALORES
( NULO , 'Matar a un ruiseñor', 'Harper Lee', 'Grand Central Publishing'),
( NULO , 'Cien Años de Soledad', 'Garcia Marquez', 'Lutfi Ozkok'),
( NULO , 'Hombre invisible', 'Ralph Ellison', 'Encyclopadeia Britannica, Inc.');

INSERTAR DENTRO prestatarios VALORES
('123490', 'Patrick Wood', '34 West Street LANCASTER LA14 9ZH ', '[correo electrónico protegido]'),
('157643', 'Ezra Martin', '10 The Grove BIRMINGHAM B98 1EU ', '[correo electrónico protegido]'),
('146788', 'Frederick Hanson', '85 Highfield Road SHREWSBURY SY46 3ME ',
'[correo electrónico protegido]');

INSERTAR DENTRO book_borrow_info VALORES
('123490', 1, '2020-02-15', '2020-02-25', 'Devuelto'),
('157643', 2, '2020-03-31', '2020-03-10', 'Pendiente'),
('146788', 3, '2020-04-10', '2020-01-20', 'Prestado');

Cada archivo exportado se almacena en una ubicación particular en MySQL y la ubicación se almacena en la variable, secure_file_priv . Ejecute el siguiente comando para averiguar la ruta del archivo. Esta es una variable de solo lectura que no puede cambiar.



SHOW VARIABLES IGUAL QUE 'seguro_expediente_priv ';





La ubicación del archivo es '/ Var / lib / mysql-files /' . Debe usar esta ubicación al momento de ejecutar el comando de exportación.

Exportar datos en formato CSV usando la declaración INTO OUTFILE:

Cualquier tabla de base de datos se puede exportar usando EN ARCHIVO declaración. Supongamos que quiero exportar los datos del libros mesa. Ejecute el siguiente comando para verificar los datos existentes de esta tabla.



SELECCIONE * DE libros;

Cualquier nombre de archivo con .csv La extensión se puede establecer para el nombre del archivo de exportación. Ejecute el siguiente comando de exportación para crear books.csv archivo en la ubicación, / var / lib / mysql-files /.

SELECCIONE título,autor,editor DE libros DENTRO OUTFILE '/var/lib/mysql-files/books.csv';

Vaya a la ubicación de exportación para verificar que el archivo no se haya creado. Haga clic en el archivo para mostrar su contenido. Si la coma existe como contenido de cualquier valor de campo de la tabla, separará el valor en varios valores. En el libros mesa, editor El campo contiene una coma (,) como contenido en el tercer registro. Si examina el contenido del archivo CSV, verá que el contenido del editor está separado en dos valores que no son apropiados.

Para resolver el problema anterior, puede exportar el libros datos de la tabla en un archivo CSV especificando los delimitadores necesarios correctamente en la declaración SQL. Ejecute el siguiente comando para exportar libros mesa en books2.csv archivar apropiadamente. Aquí, se utilizan tres delimitadores para exportar datos correctamente. Estos son CAMPOS TERMINADOS POR , ENCERRADA POR y LÍNEAS TERMINADAS POR .

SELECCIONE título,autor,editor DE libros
DENTRO OUTFILE '/var/lib/mysql-files/books2.csv'
LOS CAMPOS TERMINADO POR ','
ENCERRADA POR '''
LÍNEAS TERMINADO POR ' orte';

Ahora, si abre el books2.csv file, entonces verá que el problema anterior está resuelto en este archivo y los datos serán comas (,) no se dividen en varios valores.

Exportar datos en formato CSV usando el cliente mysql:

Los datos de la tabla se pueden exportar a un archivo CSV utilizando el cliente mysql. La tabla de prestatarios se exporta en esta parte de este artículo. Ejecute el siguiente comando para verificar el contenido existente de esta tabla.

SELECCIONE * DE prestatarios;

mysql declaración con `pero` El comando se usa aquí para exportar los datos. Uno de los beneficios de esta declaración es que puede establecer cualquier ubicación y nombre de archivo para almacenar el archivo CSV sin la ubicación predeterminada que se usa en el ejemplo anterior. Si no hay contraseña para el usuario root, -pag se omitirá la opción. La ubicación exportada es / tmp y el nombre del archivo es output.csv aquí.

mysql-h localhost-te arraigas-pag-Y'seleccionar * de library.borrowers' |
sed's/ t/,/gramo' > /tmp/output.csv

Si abre el output.csv archivo, entonces aparecerá la siguiente salida.

Exporte datos en formato CSV usando phpmyadmin:

La tabla de la base de datos se puede exportar a un archivo CSV muy fácilmente utilizando cualquier herramienta administrativa de base de datos. Tienes que instalar la herramienta antes de realizar la exportación. phpmyadmin se utiliza aquí para exportar la tabla al archivo CSV. Aquí, el nombre del archivo exportado será el nombre de la tabla. Ejecute la siguiente URL en cualquier navegador para mostrar la lista de la base de datos existente del servidor MySQL.

http: // localhost / phpmyadmin

Seleccione la tabla de la base de datos que desea exportar y haga clic en el Exportar pestaña del lado derecho. Seleccione el formato CSV de la Formato lista desplegable y haga clic en la ida botón. Selecciona el Guardar el archivo opción y presione el OK botón.


El archivo se descargará en el Descargas carpeta. Aquí, book_borrow_info se exporta la tabla. Entonces, el nombre del archivo CSV será book_borrow_info.csv y el siguiente contenido aparecerá si abre el archivo.

Conclusión:

La tarea de intercambio de datos entre las aplicaciones se vuelve más fácil utilizando la función de exportación del servidor de base de datos. MySQL admite muchos otros formatos de archivo para exportar datos de tablas. El sql El formato de archivo se utiliza principalmente para transferir datos entre los mismos servidores de bases de datos. El formato CSV es muy útil si desea intercambiar datos entre dos aplicaciones diferentes.