삽입 후 기본 키 ID 필드 값을 검색할 때 개발자는 다양한 방법을 사용하는 경우가 많습니다. 이 문서에서는 @@IDENTITY, SCOPE_IDENTITY() 및 OUTPUT 메서드의 차이점과 적합성에 대해 자세히 설명합니다.
@@IDENTITY 범위에 관계없이 모든 테이블에 대해 생성된 마지막 IDENTITY 값을 반환합니다. 범위 안전하지 않습니다. 즉, 현재 세션 내의 트리거된 삽입이나 다른 문에서 ID를 반환할 수 있습니다.
SCOPE_IDENTITY()는 비슷하게 동작하지만 반환되는 값을 현재 문으로 제한합니다. 및 연결 범위. 따라서 문 실행 중에 생성된 ID만 검색합니다.
INSERT 문의 OUTPUT 절은 테이블에 삽입된 데이터가 포함된 테이블을 반환합니다. 여기에는 생성된 IDENTITY 값이 포함됩니다.
INSERT INTO #Testing (ID, somedate) OUTPUT INSERTED.* DEFAULT VALUES;
적절한 방법은 특정 요구 사항에 따라 다릅니다.
OUTPUT 메서드는 명시적으로 범위로부터 안전하지 않습니다. 현재 범위에서 생성된 ID를 검색하지만 해당 ID가 다른 테이블에 할당된 경우 해당 ID도 반환할 수 있습니다. 엄격한 범위 안전을 위해 SCOPE_IDENTITY()를 사용하세요.
위 내용은 기본 키 ID 값을 검색하기 위해 @@IDENTITY, SCOPE_IDENTITY() 및 OUTPUT 중에서 선택하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!