我有[主鍵計數器]表[每頁在另一個表中的評論]表。
這些主鍵是每頁:每個頁,評論的ID開始在1PostgreSQL和JDBC:是否支持`UPDATE table ... RETURNING ... INTO`?
我想原子分配10點的ID寫了10層新的意見。
- 我可以使用PostgreSQL和JDBC來做到這一點嗎?
(那你有任一實例的任何鏈接/相關JDBC文件?)
我發現只有如何returning
新插入的行的主鍵的方式,使用一些getGeneratedKeys
這沒有按」在我看來這很有用。
***
我認爲SQL UPDATE語句會是這個樣子:
update PAGES
set NEXT_COMMENT_ID = NEXT_COMMENT_ID + 10
where PAGE_ID = ? <-- next-comment-id is *per page*
returning NEXT_COMMENT_ID into ?
因此,不同的線程和服務器不會嘗試重用/覆蓋相同的ID(對吧?)。
爲什麼你需要每頁評論ID呢?爲什麼不使用每個評論ID和外鍵返回頁面? – 2013-02-24 19:29:01
@ muistooshort ID會變得相當大。但是它們應該是短連續的數字,所以我可以在[bitset]中使用它們作爲索引(http://www.scala-lang.org/api/current/index.html#scala.collection.BitSet) 。 – KajMagnus 2013-02-24 19:34:39
((我會試試這個:http://stackoverflow.com/a/881414/694469)) – KajMagnus 2013-02-24 19:45:24