Badr
Badr

Reputation: 10658

How to import existing *.sql files in PostgreSQL 8.4?

I am using PostgreSQL 8.4, and I have some *.sql files to import into a database. How can I do so?

Upvotes: 119

Views: 198260

Answers (6)

Tshni Music
Tshni Music

Reputation: 9

enter image description here

use following command :-

C:\Program Files\PostgreSQL\12\bin>psql -U username -d databasename -f D:\file.sql

Upvotes: 0

Ted Rybicki
Ted Rybicki

Reputation: 11

Always preferred using a connection service file (lookup/google 'psql connection service file')

Then simply:

psql service={yourservicename} < {myfile.sql}

Where yourservicename is a section name from the service file.

Upvotes: 1

Arslan Ali
Arslan Ali

Reputation: 17812

Well, the shortest way I know of, is following:

psql -U {user_name} -d {database_name} -f {file_path} -h {host_name}

database_name: Which database should you insert your file data in.

file_path: Absolute path to the file through which you want to perform the importing.

host_name: The name of the host. For development purposes, it is mostly localhost.

Upon entering this command in console, you will be prompted to enter your password.

Upvotes: 40

sofiane
sofiane

Reputation: 271

Be careful with "/" and "\". Even on Windows the command should be in the form:

\i c:/1.sql

Upvotes: 27

Badr
Badr

Reputation: 10658

in command line first reach the directory where psql is present then write commands like this:

psql [database name] [username]

and then press enter psql asks for password give the user password:

then write

> \i [full path and file name with extension]

then press enter insertion done.

Upvotes: 84

Bolo
Bolo

Reputation: 11690

From the command line:

psql -f 1.sql
psql -f 2.sql

From the psql prompt:

\i 1.sql
\i 2.sql

Note that you may need to import the files in a specific order (for example: data definition before data manipulation). If you've got bash shell (GNU/Linux, Mac OS X, Cygwin) and the files may be imported in the alphabetical order, you may use this command:

for f in *.sql ; do psql -f $f ; done

Here's the documentation of the psql application (thanks, Frank): http://www.postgresql.org/docs/current/static/app-psql.html

Upvotes: 160

Related Questions