2017-04-05 1 views
1

필자는 Azure MS SQL Server DB 테이블 (또는 필요한 경우 전체 DB)에서 원격 소스로부터받은 삭제 명령을 무시하도록하고 싶습니다.SQL Server - 재정의 DELETE 명령?

기본적으로 삭제 명령의 기본 기능을 재정 의하여 요청을 받고 성공 메시지를 다시 보낼 수있는 방법이 있습니까?

다국적 업데이트를 공유 할 마스터 데이터베이스가 정기적으로 제거되므로 삭제 된 레코드를 아카이브로 유지하는 편도 동기화가 가능하도록하고 싶습니다.

+0

당신은 왜 당신이 그것을에 대한 문을 삭제 발행하는 데이터베이스에 행을 삭제하지 않으려면? –

+0

캡처하고 싶은 삽입물과 업데이트를 정말 잘 공유하는 서비스를 사용하고 있습니다. 또한 처리하고 싶지 않은 삭제를 포함합니다. 나는 삭제를 발행하는 것을 불가능하게 할 수 있는지 물어 보았다. 그러나 이것은 현재로서는 서비스에서 불가능하다. 다른 모든면에서 이상적이므로 Marc에서 제안한 것과 같은 작은 수정으로 삭제 명령을 복제하지 않고도 서비스를 사용할 수 있기를 바랍니다. –

답변

5

예, 있습니다. DELETE 명령의 표준 조치를 코드로 대체하는 INSTEAD OF DELETE 트리거를 설정할 수 있습니다 (이 경우 빈 코드이므로 누군가가 해당 테이블에서 레코드를 삭제하려고 할 때 아무 것도 수행하지 않습니다).

https://technet.microsoft.com/en-us/library/ms191208(v=sql.105).aspx

+0

이 제안을 해주셔서 감사합니다. 지금까지 초기 테스트에서 완벽하게 작동하는 것처럼 보입니다. –