1

내가 (ID, 이름, ...) 삭제 트리거에서 테이블 탭이 가정 나는 임시 테이블에서 삭제 된 데이터는 내가삭제 트리거에서 데이터를 가져 오는 방법은 무엇입니까?

같은 테이블에 라인이

declare @Name varchar(50) 
select @Name = Name from deleted 

한다고 가정처럼 삭제 얻을 수 있습니다

(1, 'MyName), ...) 

SL 응용 프로그램에서 엔티티 세트에서 엔티티를 분리하여 SubmitChange로 WCF 리사 서비스에서 삭제합니다. 그러나 그렇게하기 전에 이름을 "Yourname"으로 변경합니다. 그래서 코드처럼

myinstance.Name="YourName"; 
Context.tabs.Detach(myinstance); 

그래서 나는 "YourName"값을 얻고 싶습니다. 이 문제를 해결하는 방법.

+0

트리거는'삭제 된 '에서 ** 여러 행을 ** 얻을 수 있습니다 - 그래서 당신의 성명'선택 @ 이름 = 삭제에서 이름'선택, 그런 경우 ?? 명확하지 않습니다 - ** 행마다 한 번씩 실행되는 방아쇠에 의존하지 마십시오 - SQL Server에서 - 그렇지 않습니다 - 일괄 처리 ** 당 한 번 ** 해고되었습니다 ** 트리거 코드는 ** 여러 번 처리 할 수 ​​있어야합니다. 행 **을 의사 테이블에 저장하십시오! –

답변

0

변경 한 내용은 중요하지 않습니다. 삭제는 응용 프로그램이 아닌 데이터베이스에 저장된 정보로 작동합니다. 트리거에서 새 값을 가져 오려면 먼저 레코드를 업데이트해야하며 그 후에 삭제를 실행해야합니다.