나는이 오류를 논리적으로 배치하는 것처럼 보이지 않는데, 대부분의 경우와는 달리 왜 정보를 거의 제공하지 않는지 (대개 매우 좋은 전처리 기가 아니면 논리를 파고들 수 있습니다. 또한 오류입니다. 내가 그 열쇠를 추가 잘 작동 다른 기능을 가지고, 그래서이 아니 그 .. 다음 트랜잭션이 실패 할 것 같다 다른과 내가PostgreSQL 트리거 함수 업데이트 오류
update guest_list set coatcheck = true where ticket_number = 3;
"PL/pgSQL function coatcheck_gen() line 8 at SQL statement SQL statement "update guest_list set coatcheck_num = coat_num where ticket_number = old.ticket_number" PL/pgSQL function coatcheck_gen() line 8 at SQL statement SQL statement "update guest_list set coatcheck_num = coat_num where ticket_number = old.ticket_number"
이를 입력 할 때 터미널에 도착 페이지가 끝나면 끝납니다. 새로운 .old. 또는 숫자 만 사용하여 시도해 보았습니다. 아무것도. 같은 오류. 모든 테이블이 정상입니다. 모든 업데이트는 명령 완료시 작동합니다. 가 ... 다른 곳에서 알맞은 올바른 예에
나타나는 기능은 트리거
create trigger trg_coatchek_gen after update on guest_list for each row when (new.coatcheck = true) execute Procedure coatcheck_gen();
나는 확실히 당신이 실현하려 시도하고있는 무슨 파악하지 않은을 sould. – Ingaz
'각 행에 대해 업데이트 후 트리거'를 만들고 동일한 테이블을 업데이트하는 트리거를 생성했습니다. 진짜 의도입니까? 무엇이 잘못되었는지 생각해 본 적이 있다면? 거래에서 예외가 있습니까? 각 행에 예외가 있거나 예외가 없으며 잘못되었습니다. – Ingaz
예. 따라서 코트 체크 체크가 true로 변경되면 코트 체크 번호가 생성됩니다. 그것을 테이블에 추가합니다. 이것은 사람이 참석 한 후에 만 발생합니다. 그리고 손님 목록에. (티켓 행사를 작성하는 기능, 모든 유형의 이벤트 작업에 대한 기여도를 작성하는 기능. 코트 체크가 추가되기 전에 사람이 "참석"해야한다는 예외가 있습니다. 그래서 "코트 체크"가 실행될 때만 트리거가 발생합니다. 그 행에. 일단 발생하면 트리거가 함수로 가서 coatcheck_number를 만들어야합니다 .. – Zepalz