web-dev-qa-db-fra.com

Comment importer des fichiers * .sql existants dans PostgreSQL 8.4?

J'utilise PostgreSQL 8.4 et j'ai des fichiers * .sql à importer dans une base de données. Comment puis-je le faire?

94
Badr

en ligne de commande, accédez d'abord au répertoire où psql est présent, puis écrivez des commandes comme ceci:

psql [database name] [username]

puis appuyez sur Entrée. psql demande le mot de passe, entrez le mot de passe de l'utilisateur:

puis écrire

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

puis appuyez sur Entrée insertion terminée.

74
Badr

A partir de la ligne de commande:

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

À partir de l'invite psql:

\i 1.sql
\i 2.sql

Notez que vous devrez peut-être importer les fichiers dans un ordre spécifique (par exemple: définition des données avant la manipulation des données). Si vous avez bash Shell (GNU/Linux, Mac OS X, Cygwin) , les fichiers peuvent être importés dans l’ordre alphabétique , vous pouvez utiliser cette commande:

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

Voici la documentation de l'application psql (merci Frank): http://www.postgresql.org/docs/current/static/app-psql.html

132
Bolo

Le chemin le plus court que je connaisse est le suivant:

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

nom_bdd: Quelle base de données devez-vous insérer vos données de fichier dans.

chemin_fichier: Chemin absolu du fichier à travers lequel vous souhaitez effectuer l'importation.

Host_name: Le nom de l'hôte. Aux fins du développement, il s’agit principalement de localhost.

En entrant cette commande dans la console, vous serez invité à entrer votre mot de passe.

32
Arslan Ali

Faites attention avec "/" et "\". Même sous Windows, la commande devrait être sous la forme:

\i c:/1.sql
24
sofiane

Toujours préféré en utilisant un fichier de service de connexion (lookup/google 'fichier de service de connexion psql')

Alors simplement:

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

yourservicename est un nom de section du fichier de service.

1
Ted Rybicki