에 삽입하기 전에 제출 자동 증가를 읽을 I가 [UnicLine INT 정체성 (1,1) 즉 자신의 가치 나 데이터베이스에 새 레코드를 삽입 befor을 그 값을 읽을 수있는 방법방법 데이터베이스
증가 출원 된?
INSERT INTO [table]
SELECT field1, field2;
SELECT SCOPE_IDENTITY();
하고 ADO/ORM에서 해당 ID를 얻을 :
에 삽입하기 전에 제출 자동 증가를 읽을 I가 [UnicLine INT 정체성 (1,1) 즉 자신의 가치 나 데이터베이스에 새 레코드를 삽입 befor을 그 값을 읽을 수있는 방법방법 데이터베이스
증가 출원 된?
INSERT INTO [table]
SELECT field1, field2;
SELECT SCOPE_IDENTITY();
하고 ADO/ORM에서 해당 ID를 얻을 :
당신이 필요하지 안, 당신이 할 수있는 무엇을하는 것은 출력과 같은 예를 들어 새로 만든 ID입니다.
그러나 귀하의 질문에 대답하기 위해이 작업을 수행 할 수 있습니다
SELECT top 1 [UnicLine] + 1 as newIDValue FROM [table] ORDER BY [UnicLine] DESC;
또는
SELECT MAX([UnicLine]) + 1 as newIDValue FROM [table]
간단한
을하지 질문의 일부하지만 read aboutSCOPE_IDENTITY() vs @@IDENTITY vs IDENT_CURRENT('tablename')
로 알 차이점과 채널 그냥 테이블에 현재 최대 값을보고 싶다면
을 어디에서 웹 사이트 최적화 도구를 할 수있는 권리 하나 OOSE, 당신은이 작업을 수행 할 수 있습니다 그러나
select max(UnicLine) from mytable
이 반드시 무엇을 다음 값을 말하지 않을 것이다 정체성 분야에있을 것입니다. 롤백 된 인서트가있는 경우 ID는 각각 증가하므로 다음 번 인서트는 현재 최대 값 + 1보다 큰 값을 얻을 수 있습니다. 저는 balexandre에 동의합니다. 일반적으로 이유는 없습니다 니가 필요해.
은 @SCOPE_IDENTITY 또는 SCOPE_IDENTITY()입니까? –
@@ IDENTITY 또는 scope_identity() 중 하나라고 생각합니다. –