SQL Server에 트리거가 있지만 CLR 코드에 인수를 전달해야합니다 (즉, 트리거 컨텍스트에서 제공되지 않은 정보).외부 (CLR) SQL Server 트리거에 인수를 전달할 수 있습니까?
이렇게해도 될까요?
CREATE TRIGGER MyTrigger ON MyTable FOR INSERT
AS EXTERNAL NAME MyAssembly.MyNamespace.MyTriggerHandler("Foo", "Bar")
이러한 인수는 물론 정적 일 수 있습니다.
인수 치환 수는 서로 다르지만 각 클래스에 대해 CLR 어셈블리에서 별도의 클래스 나 함수를 만드는 것은 다루기 힘들며 다른 트리거가 필요할 때마다 피하고 싶은 컴파일/배포 단계가 필요합니다.
일반 트리거에도 매개 변수를 전달할 수 없습니다. 왜 SQLCLR 트리거에 매개 변수를 사용 하시겠습니까? INSERTED, DELETED 테이블은 SQLCLR 트리거 내부에서 일반적인 트리거 내부와 마찬가지로 쿼리 할 수 있습니다 –