Обновление таблицы Heroku PostgreSQL из файла SQL - PullRequest
0 голосов
/ 05 марта 2020

Я пытался импортировать sql файл в 1 таблицу в Heroku postgresql.

Я следовал за ответом здесь: { ссылка }

# Dump specific table data
pg_dump --data-only --table=products sourcedb > products.sql

# Get connection info
heroku config | grep HEROKU_POSTGRESQL

# example
# postgres://user3123:passkja83kd8@ec2-117-21-174-214.compute-1.amazonaws.com:6212/db982398

# Import file
psql -h ec2-117-21-174-214.compute-1.amazonaws.com -p 6212 -U user3123 db982398 < products.sql

Однако я столкнулся с этой ошибкой:

ERROR:  duplicate key value violates unique constraint "products_pkey"
DETAIL:  Key (id)=(1) already exists.
CONTEXT:  COPY products, line 1

Это означает, что строка существует, поэтому ее невозможно скопировать.

Я подумал о следующем

ALTER TABLE products RENAME to original_products
CREATE TABLE products;
# import data, and drop original_products after checking
DROP TABLE original_products

Однако, Я не знаю, каковы потенциальные побочные эффекты. Я предпочитаю решение, которое не отбрасывает ни одной таблицы.

Я хочу заменить всю таблицу продуктов данными файла sql. Как я могу это сделать? Спасибо!

...