Nous utilisons des cookies pour vous garantir la meilleure expérience sur notre site. Si vous continuez à utiliser ce dernier, nous considèrerons que vous acceptez l'utilisation des cookies. J'ai compris ! ou En savoir plus !.
banniere

Le portail francophone de la géomatique


Toujours pas inscrit ? Mot de passe oublié ?
Nom d'utilisateur    Mot de passe              Toujours pas inscrit ?   Mot de passe oublié ?

Annonce

Printemps des cartes 2024

#1 Tue 28 May 2013 17:08

simo lay
Participant assidu
Date d'inscription: 8 Dec 2011
Messages: 172

Saut de ligne Batch

Bonjour,

j'ai besoin de votre aide,je souhaiterai exécuter un traitement (une dizaine de requête enchainées de PostgreSQL) chaque jours à une heure fixe, pour cela j'ai fait le batch suivant:

Code:

@echo off 
"C:\Program Files\PostgreSQL\9.1\bin\psql.exe" -h 00.00.00 -U postgres -d BD_test -p 5432 -c "create table saf (id text,nom text); insert into saf (id,nom) values ('ttt','rrrr')";

les problemes que je trouve:
je voulais savoir comment  spécifier le mot de passe dans le batch (parce que maintenant à chaque fois que je lance le batch il me demande le mot de passe une fois de le tape ça marche pas de probleme).
deuxième question : mon traitement contient 10 requête enchainées et là lorsque toutes les requêtes sont dans la même ligne séparées par des points virgule comme dans l'exemple, mon batch fonctionne par contre si je veux une requête par ligne (je fait un saut de ligne) ça marche pas est ce qu'il y'a moyen de régler ce problème.

merci

Dernière modification par simo lay (Tue 28 May 2013 17:14)

Hors ligne

 

#2 Tue 28 May 2013 17:24

VianneyD
Participant assidu
Date d'inscription: 30 May 2011
Messages: 153

Re: Saut de ligne Batch

Bonjour,

Pour le mot de passe, il faut spécifier -W [ton_mdp] dans la commande
S'il y a plusieurs commandes à exécuter, le plus simple selon moi est de créer un fichier sql et de l'executer avec l'option -f [ton_fichier_sql].

Bon courage


Vianney Dugrain

Hors ligne

 

#3 Tue 28 May 2013 18:09

simo lay
Participant assidu
Date d'inscription: 8 Dec 2011
Messages: 172

Re: Saut de ligne Batch

Merci VianneyD pour votre réponse, j'ai testé votre piste est j'ai un message d'erreur ( peut être au niveau de syntaxe).

Code:

@echo off 
"C:\Program Files\PostgreSQL\9.1\bin\psql.exe" -h 00.00.0.00 -U postgres -d BD_test -p 5432 -w 123321 -f D:\req.sql;

je sais pas si j'ai une erreur dans ma ligne.

Hors ligne

 

#4 Tue 28 May 2013 18:14

VianneyD
Participant assidu
Date d'inscription: 30 May 2011
Messages: 153

Re: Saut de ligne Batch

Essaie avec -W (majuscule) pour le mot de passe.


Vianney Dugrain

Hors ligne

 

#5 Mon 03 June 2013 08:12

simo lay
Participant assidu
Date d'inscription: 8 Dec 2011
Messages: 172

Re: Saut de ligne Batch

Bonjour,
Après avoir suivi ta piste VianneyD et quelques recherche j'ai pu trouvé la bonne réponse et là voila:

Code:

echo traitement
set PGPASSWORD=XXXXX
"C:\Program Files\PostgreSQL\9.1\bin\psql.exe" -h XX.XX.X.XXX -U user_test -d bd_test -p 5432 -f C:\test.txt

merci

Dernière modification par simo lay (Mon 03 June 2013 08:13)

Hors ligne

 

Pied de page des forums

Powered by FluxBB