Postgresql
Postgresql:按初始表的欄位進行 LIKE 和分區
我有一個已經存在的表,我想對其進行分區,查看文件我發現這不會發生,所以我重新創建了表並嘗試對其進行分區:
CREATE TABLE tableB (LIKE tableA INCLUDING ALL) PARTITION BY range (field1_in_tableA, field2_in_tableA);
但我得到:
ERROR: insufficient columns in PRIMARY KEY constraint definition DETAIL: PRIMARY KEY constraint on table "tableB" lacks column "field1_in_tableA" which is part of the partition key.
有什麼解決方法嗎?
如果您有主鍵,則不能按不屬於主鍵的鍵進行分區。您想要新表上的主鍵嗎?如果是這樣,您必須將 field1_in_tableA 添加到主鍵,或者將其從分區鍵中刪除。