는 SQL 서버 DB 트리거에서 사용할 수있는 데이터를 캐시 어쨌든이 업데이트, 삭제를 보여주는 데이터베이스 트리거가있는 것을 좋아합니다.내가 것</p> <p>, 내가</p> <p>내가 ID, 이름을 가진 사용자 테이블을 가지고 사용자 ID 열이있는 주문 테이블이
그래서 나는 모든 단일 db 트리거에서이 두 테이블 간의 조인을해야만합니다. 나는 사용자에게 ID를 매핑하고 트리거에 "조회"를 다시 사용하는 쿼리를 선행 적으로 수행 할 수 있다면 더 좋을 것이라고 생각합니다. . 이것이 가능한가?
DECLARE @oldId int
DECLARE @newId int
DECLARE @oldName VARCHAR(100)
DECLARE @newName VARCHAR(100)
SELECT @oldId = (SELECT user_id FROM Deleted)
SELECT @newId = (SELECT user_id FROM Inserted)
SELECT @oldName = (SELECT name FROM users where id = @oldId)
SELECT @newName = (SELECT name FROM users where id = @newId)
INSERT INTO History(id, . . .
한 트랜잭션에서 두 레코드를 업데이트하면 삭제되고 삽입 된 하위 쿼리가 두 레코드를 모두 반환하므로이 트리거가 실패합니다. –