【问题标题】:INSERT INTO inserting 0 rowsINSERT INTO 插入 0 行
【发布时间】:2018-11-13 01:28:54
【问题描述】:

在我的 Postgresql 数据库中,我试图从表 planet_osm_nodes 中获取坐标(纬度、经度),其中 id 等于 edge2 中的坐标,并将它们插入到 edge2 中的两列中。不幸的是,当我运行这个命令时:

INSERT INTO edges2(node1lat, node1lon) SELECT lat, lon 
FROM edges LEFT OUTER JOIN planet_osm_nodes ON (edges.node1 = 
planet_osm_nodes.id)

我明白了

INSERT 0 355466
Query returned successfully in 2 secs 875 msec.

并且没有值被插入到我的表边2中。

但是,当我只运行选择命令时:

SELECT lat, lon FROM edges LEFT OUTER JOIN planet_osm_nodes ON (edges.node1 = planet_osm_nodes.id)

它返回我想要插入的列和数据。

Lat 和 lon 是整数,我想在其中插入它们的列也是如此,所以我不知道为什么这不起作用。有什么建议吗?

【问题讨论】:

  • INSERT 0 355466 表示已插入 355466 行
  • 你找到解决办法了吗?

标签: postgresql insert-into


【解决方案1】:

可能会发生一些事情:

  • 您已经插入数据(尝试检查)
  • 您没有提交交易
  • 您以只读模式连接

【讨论】:

  • 我检查了所有这三个东西,但数据还没有在表中,我确定我正在提交事务,并且我有权限插入。
  • 你能做一个简单的插入,有2个随意值吗?有用吗?