使用Postgres复制整个表

时间:2010-05-05 12:04:22

标签: database postgresql copy

我正在尝试将一个表的内容复制到Postgres中的另一个表中,但是看起来有些行没有被正确复制:

  

的ActiveRecord :: StatementInvalid:   PGError:错误:列“email_date”是   没有时区的时间戳类型   但表达式是字符型   不同的提示:你需要重写   或表达。

有什么方法可以让它自动跳过(或忽略)无效的行?

这是我正在使用的查询:

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

1 个答案:

答案 0 :(得分:1)

正如消息所说,这不是“一些无效行”的问题,你有不兼容的类型 对于email_date列。要么修复它,要么在查询中写入显式转换。

更新:如果(看起来像)你想复制内容表的架构(即创建一个具有相同架构的新表并复制内容),你可以这样做只需使用SELECT INTO