[英]PostgreSQL : Transaction and foreign key problem
我在表A中插入一个值,它有一个串行类型作为主键。 我想使用查询的返回值作为表B的外键...但我收到此消息:
错误:在表“tb_midia_pessoa”上插入或更新违反外键约束“tb_midia_pessoa_id_pessoa_fkey”DETAIL:键(id_pessoa)=(30)不存在于表“tb_pessoa”中。 )
如果没有: - 启动一个新的事务 - 删除我的外键约束= O?
问候! 佩德罗
您可以制作一个可推迟的FK,只需使用DEFERRABLE并且可能是最初的,这取决于您。
http://www.postgresql.org/docs/current/static/sql-createtable.html
下面的语句允许延迟非延迟约束,直到事务提交。 如果您不想更改FK定义。
SET CONSTRAINTS ALL DEFERRED;
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.