PostgreSQL - Como puedo hacer una consulta a postgresql desde un .bat?

 
Vista:
sin imagen de perfil
Val: 14
Ha aumentado su posición en 8 puestos en PostgreSQL (en relación al último mes)
Gráfica de PostgreSQL

Como puedo hacer una consulta a postgresql desde un .bat?

Publicado por Martin (8 intervenciones) el 21/07/2020 02:08:40
Creé un .bat con el siguiente código:

@echo off psql -d postgres -U postgres -p 5432

exit

Hasta ahí todo bien, cuando lo abro me aparece el cmd con lo siguiente:

ADVERTENCIA: El código de página de la consola (437) difiere del código de página de Windows (1252). Los caracteres de 8 bits pueden funcionar incorrectamente. Vea la página de referencia de psql «Notes for Windows users» para obtener más detalles. Digite «help» para obtener ayuda.

postgres=#

lo que significa que se conectó satisfactoriamente con el postgresql sin pedirme el password (ya que le creé el archivo pgpass.conf en el directorio). Lo que no se a partir de ahora, y es donde está mi problema, es que no sé cómo hacer para, desde el mismo archivo .bat, realizarle un insert a una de las tablas de una de las bases de datos de postgres, por ejemplo: "INSERT into prueba (nombre) values ("Fernando")". Desde el cmd puedo además de conectar con el postgresql, conectar con una base de datos utilizando \c (nombre de mi base de datos) y a partir de ahí ya puedo hacer un insert con éxito, pero no sé como hacer lo mismo desde el archivo .bat para que al ejecutarlo haga el insert automáticamente. De más esta decir que soy bastante nuevo en esto, les agradecería mucho su ayuda.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Francisco
Val: 215
Oro
Ha mantenido su posición en PostgreSQL (en relación al último mes)
Gráfica de PostgreSQL

Como puedo hacer una consulta a postgresql desde un .bat?

Publicado por Francisco (65 intervenciones) el 21/07/2020 02:40:05
Hola

Ejecuta un .BAT, y llamos a psql para que ejecute un archivo con las sentencias

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
@echo off
set HOST=mi_ip
set PORT=5432
set DATABASE=mi_bd
set USERDB=mi_user
set PGPASSWORD=mi_password
cls
 
psql -h %HOST% -p %PORT% -d %DATABASE% -U %USERDB% -f mi_archivo.sql
pause
 
set HOST=
set PORT=
set DATABASE=
set USERDB=
set PGPASSWORD=

Saludos

Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
2
Comentar
sin imagen de perfil
Val: 14
Ha aumentado su posición en 8 puestos en PostgreSQL (en relación al último mes)
Gráfica de PostgreSQL

Como puedo hacer una consulta a postgresql desde un .bat?

Publicado por Martin (8 intervenciones) el 21/07/2020 03:00:29
Me acaba de resultar, no lo puedo creer :D Muchisimas gracias Francisco!!!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar