Я только начал использовать Postgres и пытаюсь создать пример базы данных, чтобы понять его функции, оглядываясь по сторонам, я нашел несколько скриптов в pgfoundry.org. Я понимаю команды, так как ранее я использовал Oracle и MS-SQL, но все скрипты, которые я запускаю, возвращают ошибки, когда достигают инструкции «COPY FROM». Точнее, ошибка выдается на первый элемент, который должен быть вставлен в данную таблицу.
Я пытался запустить сценарии как в виде запросов, так и в виде pgScripts, но в обоих случаях я получаю сообщение об ошибке в первой строке после COPY FROM.
Я использую pgAdminIII, и я использовал StackBuilder для установки PostgreSQL 9.2.4.1 в качестве драйвера БД. Могу ли я пропустить какую-то базовую конфигурацию, которая мешает мне запустить эту команду, или я просто не понял, как она работает?
РЕДАКТИРОВАТЬ:
ошибка:
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`
где текст:
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`
источник
SET lc_messages = C
просто запустите его в окне редактора SQL, которое «содержит» сеанс.SET lc_messages = 'C'
.Ответы:
pgScript - это локальное расширение скрипта pgAdmin, которое вам, скорее всего, здесь не нужно.
pgAdmin - это графический интерфейс, а не консольное приложение -
stdin
вы не можете его легко использовать. Если вам нужноstdin
передать потоковое содержимое, используйте psql, консольное приложение, с\copy
мета-командой psql .Если у вас есть файл (что вы, очевидно, делаете), просто используйте SQL
COPY
из pgAdmin:Файл должен быть доступен для чтения
postgres
системному пользователю.Больше информации в этом тесно связанном запросе со списком поддержки pgAdmin .
источник
psql postgres -p 5432 -f C:\Users\usernexus\Desktop\database05-12-2012.sql
? Кроме того, я просто все пробую локально, я просто установил pgAdmin на свой ноутбук.psql -f
будет выполнять файл сценария SQL. Вы, похоже, имеете дело с файлом данных . Я обновил свой ответ.