1)首次查询
INSERT INTO stay_in_touch_contacts (id, facebook, twitter, instagram, external_contact) VALUES (nextval(seq_stay_in_touch_contacts), 'somelink', 'somelink', 'someling', 'somelink');
2)第二次查询
Update users SET stay_in_touch_contacts_id=currval('seq_stay_in_touch_id') WHERE ...;
他们在我的代码中逐一进行。
当同时使用数据库时,此查询是否可能导致意外的列引用? 如何避免?
答案 0 :(得分:1)
currval()
是特定于会话的。
如果单独的会话增加了您的序列,currval()
将继续返回您的预期值,并且更新语句将不会使用错误的值stay_in_touch_contacts_id
我希望我能正确理解这个问题。