집 >데이터 베이스 >MySQL 튜토리얼 >SQL Server 2008에서 특정 테이블을 수정하는 SQL 문을 어떻게 기록할 수 있습니까?
테이블에 영향을 미치는 SQL 로깅
열 업데이트 소스를 확인하려면 영향을 받는 테이블에 다음과 같은 트리거를 생성할 수 있습니다. 변경 사항을 담당하는 SQL을 캡처합니다. Microsoft SQL Server 2008에서 이를 달성하는 방법을 살펴보겠습니다.
트리거 생성
DDL 문을 활용하면 테이블 업데이트에 대한 SQL을 기록하는 트리거를 생성할 수 있습니다. :
CREATE TRIGGER trigger_name ON table_name AFTER UPDATE AS BEGIN -- Declare a variable to store the executed SQL DECLARE @sql_text VARCHAR(MAX); -- Retrieve the executed SQL from the context_info() function SET @sql_text = CAST(EVENTDATA() AS NVARCHAR(MAX)); -- Insert the SQL text into a log table or perform other desired actions INSERT INTO log_table (sql_text) VALUES (@sql_text); END;
실행된 파일에 액세스 SQL
트리거가 생성되면 트리거 코드 내에서 EVENTDATA() 함수를 사용하여 실행된 SQL을 캡처할 수 있습니다. EVENTDATA() 함수는 해당 이벤트를 발생시킨 SQL 텍스트를 포함하여 현재 데이터베이스 이벤트에 대한 정보에 대한 액세스를 제공합니다. 이 정보를 추출하면 열 업데이트의 소스를 식별할 수 있습니다.
추가 참고 사항:
위 내용은 SQL Server 2008에서 특정 테이블을 수정하는 SQL 문을 어떻게 기록할 수 있습니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!