데이터베이스를 태평양 표준시로 UTC로 저장하는 것을 전환하고 있지만 동시에 모든 코드를 변경하지는 않습니다.SQL 트리거가 발생하지만 원래 값이 삽입되지 않았습니다.
두 열에 입력 된 시간을 업데이트하고 변환 한 다음 다른 열에 삽입하는 트리거를 작성하려고합니다.
예. OriginalTime 열에 태평양 시간을 삽입하면 시간이 UTC로 변환되고 NewTime 열이 UTC로 시간으로 업데이트됩니다. 반대로, NewTime에 값을 삽입/업데이트하면 태평양으로 다시 변환하여 OriginalTime에 넣어야합니다.
잘못되었거나 뭔가 반복되고 있습니까?
현재의 트리거가 변환 된 값을 올바르게 입력하고 있지만 트리거를 시작한 삽입이 실패한 것처럼 보입니다.
내가 값을 삽입하는 경우 : 삽입 UPDATE(column)
에
+-----------------+--------------------------+
| CreateDate | CreateDateUTC |
+-----------------+--------------------------+
| NULL | 2013-01-24 20:27:13.510 |
+-----------------+--------------------------+
커서와 트리거 ... 내 눈, 내 눈 ... 화상. 나는 하나의 업데이트와 case 문을 기반으로 설정을 변경하지 않고 다시 작성하려고합니다. – RThomas
하하 나는 그 감정을 많이 보았지만 그것을 뒷받침 할 정도는 아니다. (그렇지 않다는 말은하지 않습니다.) 레코드가 추가/수정 될 때마다 실행해야하기 때문에 트리거가 적절하지 않습니까? 커서/집합 토론에 관한 한, 집합 기반 모델로 변환하는 방법을 보여주는 유용한 자료가 있습니까? – jstim