Копирование всей таблицы с помощью Postgres - PullRequest
1 голос
/ 05 мая 2010

Я пытаюсь скопировать содержимое одной таблицы в другую в Postgres, однако кажется, что некоторые строки копируются неправильно:

ActiveRecord :: StatementInvalid: PGError: ERROR: столбец "email_date" является типа timestamp без часового пояса но выражение имеет тип символа разные подсказки: вам нужно будет переписать или приведите выражение.

Можно ли как-нибудь автоматически пропустить (или игнорировать) недопустимые строки?

Вот запрос, который я использую:

SET statement_timeout = 0; INSERT INTO emails3 SELECT * FROM emails

1 Ответ

1 голос
/ 05 мая 2010

Как говорится в сообщении, это не проблема "некоторых недопустимых строк", у вас есть несовместимые типы для столбца email_date. Либо исправьте это, либо напишите явное преобразование в запросе.

ОБНОВЛЕНИЕ: Если (как кажется) вы хотите скопировать содержимое и схемы таблицы (т.е. создать новую таблицу с той же схемой и скопировать содержимое), вы можете сделать это просто с ВЫБРАТЬ В .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...