Acabo de comenzar a usar Postgres y estoy tratando de crear una base de datos de muestra para comprender sus funciones, mirando a mi alrededor, encontré algunos scripts en pgfoundry.org. Entiendo los comandos, ya que anteriormente usaba Oracle y MS-SQL, pero todos los scripts que estoy ejecutando devuelven errores cuando alcanzan la instrucción "COPY FROM". Más precisamente, el error se arroja al primer elemento que debe insertarse en la tabla dada.
Intenté ejecutar los scripts como consultas y como pgScripts, pero de ambas maneras obtengo un error en la primera fila después de COPY FROM.
Estoy usando pgAdminIII y usé StackBuilder para instalar PostgreSQL 9.2.4.1 como un controlador DB. ¿Puedo perder alguna configuración básica que me impide ejecutar este comando, o simplemente no entendí cómo funciona?
EDITAR:
El error es:
ERROR: syntax error at or near "7"
LINE 5600: 7 4 13 37 2012-03-10 16:41:43.797787 2012-03-10 16:41:43.797...
^
********** Error **********
ERROR: syntax error at or near "7"
SQL status: 42601
Char: 140891`
donde está el texto:
COPY action_abilitations (id, group_action_id, partecipation_role_id, group_id, created_at, updated_at) FROM stdin;
7 4 13 37 2012-03-10 16:41:43.797787 2012-03-10 16:41:43.797787`
fuente
SET lc_messages = C
simplemente ejecútelo en la ventana del editor de SQL, que "contiene" una sesión.SET lc_messages = 'C'
.Respuestas:
pgScript es una extensión de script local de pgAdmin, que probablemente no desee aquí.
pgAdmin es una GUI, no una aplicación de consola; no hay una
stdin
que pueda usar fácilmente. Si necesitastdin
transmitir su contenido, use psql, que es una aplicación de consola, con el\copy
metacomando de psql .Si tiene un archivo (que obviamente tiene), simplemente use SQL
COPY
de pgAdmin:El archivo debe ser legible para el
postgres
usuario del sistema.Más información en esta solicitud estrechamente relacionada con la lista de soporte de pgAdmin .
fuente
psql postgres -p 5432 -f C:\Users\usernexus\Desktop\database05-12-2012.sql
:? Además, solo estoy probando todo localmente, acabo de instalar pgAdmin en mi computadora portátil.psql -f
ejecutaría un archivo de script SQL. Pareces lidiar con un archivo de datos . Actualicé mi respuesta.