2010-06-15 57 views
0

我迁移我们的模型到PostgreSQL的FTS和数据完整性postgresql正在将更新增加2?

update myschema.counters set counter_count= (counter_count+1) where counter_id =? 

将按预期在MySQL,但Postgres里它是由2每次递增?这是简单的int域我相信,我没有什么特别的事情发生。

+0

这是不可能的,除非你有一个'触发器'正在与更新混合。或复杂的“规则”。 – 2010-06-15 17:00:39

+0

我不这样做,我真的为此感到茫然。我还没有对数据库做任何事情。 0触发器或规则。 – 2010-06-15 17:03:07

+0

您执行查询两次,检查日志文件以查看两个查询。 – 2010-06-15 17:19:11

回答

1

您应该使用sequence来填充值。

CREATE SEQUENCE counter_seq START 1; 

UPDATE myschema.counters 
    SET counter_count = NEXTVAL('counter_seq') 
WHERE counter_id = ?