我正在使用 PostgreSQL 8.4,并使用pgp_sym_encrypt
pgcrypto 扩展中的函数在插入时加密数据。所以我的插入查询看起来像:
insert into myTable (
column1
,column2
)
values (
pgp_sym_encrypt('value1','key')
,pgp_sym_encrypt('value1','key')
);
我在表中的 column1 上应用了主键约束,但约束并不总是检测到插入已经存在的值,因为对于相同的解密值,加密数据并不总是相同的。
问题 :
如何应用此约束以检查解密数据是否匹配并且在这种情况下不允许插入?