Los archivos CSV simplifican el proceso de almacenamiento de datos. Como el formato se basa en filas y columnas, CSV se traduce bien en una base de datos relacional.
Es fácil importar un archivo CSV a una base de datos y exportar desde una base de datos a un archivo CSV. Hay algunas técnicas diferentes que puede usar para hacerlo con PostgreSQL.
Crear un archivo CSV
Aquí hay algunos datos CSV de muestra que puede usar para crea tu propio archivo CSV:
id, nombre, apellido, correo electrónico
1,Riannon,Pulsificador,Riannon.Pulsificador@ejemplo.com
2,Moyna,Palocz,Moyna.Palocz@ejemplo.com
3,Roslyn,Bearnard,Roslyn.bearnard@ejemplo.com
4,Gloria,Aldric,Gloria.Aldric@ejemplo.com
5,feliz,Greenwald,feliz.Greenwald@ejemplo.com
Antes de importar el archivo CSV a la base de datos PostgreSQL, deberá crear una tabla que coincida con el formato de archivo CSV. Use el siguiente código para crear una tabla de Postgres.
CREARMESA empleados(identificaciónEn tNONULO,
nombre char (20),
apellido char (20),
carácter de correo electrónico (50));
Importar archivos CSV a PostgreSQL
Puede importar archivos CSV a una tabla de Postgres en el servidor o en una máquina cliente.
Importar archivos CSV en el lado del servidor
Para importar un archivo CSV a un servidor PostgreSQL, use el comando COPY de PostgreSQL y la palabra clave FROM. Esto le permite copiar datos de un archivo CSV a una tabla de Postgres, siempre que la estructura coincida. Use el siguiente código para copiar el archivo CSV de muestra en la tabla de empleados:
COPIAR empleados (id, nombre, apellido, email)
DE '/tmp/sample.csv'
DELIMITADOR ','
CABECERA CSV;
La ruta en el ejemplo anterior es absoluta. Puede usar una ruta relativa a su directorio de datos de Postgres si lo prefiere.
Puede copiar los datos con o sin encabezados, así que siéntase libre de omitir la última línea de código si no los necesita.
Importar archivos CSV en el lado del cliente
En una máquina cliente, use psql \Copiar comando para importar el archivo CSV. Ejecute el siguiente código en el símbolo del sistema de psql para copiar el archivo CSV de muestra en la tabla de empleados.
\copiar empleados DE '/tmp/sample.csv' DELIMITADOR ',' CABECERA CSV;
Exportar archivos CSV desde PostgreSQL
Al igual que con la importación, también puede exportar un archivo CSV del lado del servidor o del lado del cliente.
Exportar archivos CSV en el lado del servidor
Utilice el comando COPY y la palabra clave TO para exportar los datos a un archivo CSV. Debe especificar la tabla de origen y la ruta al archivo de destino. Esta vez, la ruta debe ser absoluta:
COPIAR empleados A '/tmp/employees.csv' CABECERA CSV;
Si solo necesita exportar algunas de las filas de la base de datos, use el comando SELECCIONAR de la siguiente manera:
COPIAR (SELECCIONE * DE empleados donde nombre='Moyna') A '/tmp/employees-moyna.csv' CABECERA CSV;
Exportar archivos CSV en el lado del cliente
Para exportar datos en el lado del cliente, use el \Copiar comando y el A palabra clave en el símbolo del sistema psql:
\copiar empleados A 'ruta-al-archivo.csv' Encabezado CSV;
Uso de un adaptador de base de datos
No tiene que usar la terminal para importar un archivo CSV. Puede importar los datos a través de un objeto de cursor usando su lenguaje de programación preferido. Por ejemplo, si trabaja con Python, puede conectarse al servidor PostgreSQL y ejecutar el COPIAR dominio.
Para esto, necesita conectar Python a Postgres a través de un adaptador de base de datos como psicopg2.
pip instalar psycopg2
Conéctese a la base de datos usando el siguiente código:
importar psicopg2;
conexión = psycopg.connect(
base de datos="empleado_db",
host="hostlocal"
usuario="postgres",
contraseña="contraseña",
)
Luego cree un objeto de cursor y utilícelo para ejecutar el comando COPY:
cursor = conexión.cursor()
cursor.ejecutar(
"COPIAR empleados (id, nombre, apellido, email)
DESDE '/tmp/muestra.csv'
DELIMITADOR ','
CABECERA CSV;"
)
conexión.cerrar()
Administre sus datos de PostgreSQL con la comodidad de CSV
Es un proceso simple para importar y exportar datos utilizando archivos PostgreSQL y CSV. Puede usar los comandos psql en el cliente o el servidor, o usar un adaptador de base de datos mediante programación.
Si es más una persona de GUI, considere usar la herramienta pgAdmin. Es una aplicación GUI de código abierto que puede ayudarlo a importar y exportar datos aún más fácilmente.