我正在尝试将一个表的内容复制到Postgres中的另一个表中,但是看起来有些行没有被正确复制:
的ActiveRecord :: StatementInvalid: PGError:错误:列“email_date”是 没有时区的时间戳类型 但表达式是字符型 不同的提示:你需要重写 或表达。
有什么方法可以让它自动跳过(或忽略)无效的行?
这是我正在使用的查询:
SET statement_timeout = 0; INSERT INTO emails3 SELECT * FROM emails
答案 0 :(得分:1)
正如消息所说,这不是“一些无效行”的问题,你有不兼容的类型
对于email_date
列。要么修复它,要么在查询中写入显式转换。
更新:如果(看起来像)你想复制内容和表的架构(即创建一个具有相同架构的新表并复制内容),你可以这样做只需使用SELECT INTO。