This topic shows how to import data into a Neon database table from a CSV file using a simple example.
The instructions require a working installation of psql. The psql client is the native command-line client for Postgres. It provides an interactive session for sending commands to Postgres. For installation instructions, see How to install psql.
The following example uses the ready-to-use neondb database that is created with your Neon project, a table named customer, and a data file named customer.csv. Data is loaded from the customer.csv file into the customer table.
Connect to your database
Connect to the
neondbdatabase usingpsql. For example:psql "<your_neon_database_connection_string>"You can find your connection string on your Neon Project Dashboard. Click on the Connect button. Use the drop-down menu to copy a full
psqlconnection command.note
For more information about connecting to Neon with
psql, see Connect with psql.Create the target table
Create the
customertable — table you are importing to must exist in your database and the columns must match your CSV file.CREATE TABLE customer ( id SERIAL, first_name VARCHAR(50), last_name VARCHAR(50), email VARCHAR(255), PRIMARY KEY (id) )tip
You can also create tables using the SQL Editor in the Neon Console. See Query with Neon's SQL Editor.
Prepare the CSV file
Prepare a
customer.csvfile with the following data — note that the columns in the CSV file match the columns in the table you created in the previous step.First Name,Last Name,Email 1,Casey,Smith,casey.smith@example.com 2,Sally,Jones,sally.jones@example.comLoad the data
From your
psqlprompt, load the data from thecustomer.csvfile using the\copyoption.\copy customer FROM '/path/to/customer.csv' DELIMITER ',' CSV HEADERIf the command runs successfully, it returns the number of records copied to the database:
COPY 2For more information about the
\copyoption, refer to the psql reference, in the PostgreSQL Documentation.
Need help?
Join our Discord Server to ask questions or see what others are doing with Neon. Users on paid plans can open a support ticket from the console. For more details, see Getting Support.