1
에서 트리거되는 Postgres에 제약 조건이 필요합니다. INSERT queriesonly (UPDATE 쿼리가 아님).Postgres : INSERT에 대해서만 점검하는 제약
는 현재는이 방법으로 구현됩니다 check_something
CREATE OR REPLACE FUNCTION check_something(UUID, UUID)
RETURNS BOOLEAN AS $$
DECLARE
existed_id UUID;
BEGIN
SELECT id
INTO existed_id
FROM test WHERE ...etc.
RETURN existed_id IS NULL
END;
$$ LANGUAGE 'plpgsql' VOLATILE;
그리고 현재 check_something_const
갱신에 쿼리를 삽입 모두 트리거
ALTER TABLE test ADD CONSTRAINT check_something_const
CHECK (check_something(id, task_id)) NOT VALID;
. 새 행을 삽입했지만 업데이트하지 않을 때 에만을 확인해야합니다.
삽입 트리거 –
이 필요합니다. 삽입 트리거 이전/이후에 사용할 수 있습니다. https://www.postgresql.org/docs/9.1/static/sql-createtrigger.html – swd