0
比方說,我們有如下表:PostgreSQL的:列默認gen_random_bytes UNIQUE
CREATE TABLE foo (
column_1 bigint,
column_2 bytea DEFAULT gen_random_bytes(2),
PRIMARY KEY (column_1, column_2)
);
注:我們希望column_2
是隨機&強加密。
我們如何在不引起主鍵衝突的情況下插入一行?
我想我們必須做一個循環,直到gen_random_bytes(2)
返回一個唯一的結果?如果是這樣,我們可以用純粹的SQL
做這個循環,也許用遞歸CTE,而不是用plpgsql
?
對不起,也許問題不清楚。我們只想插入一行。 – ma11hew28
@mattdipasquale:新的答案 –