Encapsuler une commande sql dans un script windows .bat

Fermé
Alain29100 Messages postés 9 Date d'inscription samedi 14 juillet 2012 Statut Membre Dernière intervention 22 juin 2017 - 19 juil. 2016 à 15:01
 Utilisateur anonyme - 29 juil. 2016 à 22:07
Bonjour,

Je voudrais lancer une purge de table dans un batch qui sera appelé par l'ordonnanceur.
Mon script :

set EXPPARM=PGUSER
for /F %%i in ('call wexpparmrtv %EXPPARM%') do set PGUSER=%%i
set EXPPARM=PGPASSWORD
for /F %%i in ('call wexpparmrtv %EXPPARM%') do set PGPASSWORD=%%i
SET POSTGRESQLPATH= C:\"Program Files"\PostgreSQL\9.4\bin
set DATABASE=DBCRM-REC

%POSTGRESQLPATH%\psql.exe -U %PGUSER% -c \"SELECT * FROM HISTORY WHERE HisUpd < current_date -10";\%DATABASE%



Voilà le résultat :


C:\wsys\lsystst>set EXPPARM=PGUSER
C:\wsys\lsystst>for /F %i in ('call wexpparmrtv PGUSER') do set PGUSER=%i
C:\wsys\lsystst>set PGUSER=postgres
C:\wsys\lsystst>set EXPPARM=PGPASSWORD
C:\wsys\lsystst>for /F %i in ('call wexpparmrtv PGPASSWORD') do set PGPASSWORD=%i
C:\wsys\lsystst>set PGPASSWORD=*****
C:\wsys\lsystst>set DATABASE=DBCRM-REC
C:\wsys\lsystst>SET POSTGRESQLPATH= C:\"Program Files"\PostgreSQL\9.4\bin

C:\wsys\lsystst>C:\"Program Files"\PostgreSQL\9.4\bin\psql.exe -U postgres -c \"SELECT * FROM HISTORY WHERE HisUpd < current_date -10";\DBCRM-REC
psql : attention : option supplémentaire « FROM » ignorée
psql : attention : option supplémentaire « HISTORY » ignorée
psql : attention : option supplémentaire « WHERE » ignorée
psql : attention : option supplémentaire « HisUpd » ignorée
psql : attention : option supplémentaire « < » ignorée
psql : attention : option supplémentaire « current_date » ignorée
psql : attention : option supplémentaire « -10;\DBCRM-REC » ignorée
psql: FATAL: la base de données « * » n'existe pas
C:\wsys\lsystst>


Merci pour votre aide...

Un breton embarassé :/


A voir également:

1 réponse

Utilisateur anonyme
29 juil. 2016 à 22:07
Bonjour,

je ne connais pas du tout.

Mais, il faut il y aller par tâtonnement, si tu fais, pour essayer (dégugage) :


"SELECT " & * & " FROM HISTORY"

Ca dit quoi ?

0