2009-06-16 6 views

답변

14

(당신이 32 비트 정수에 맞는 알고 제공). 다음은 Identity 열이 Integer로 시작되거나 "Int"내부에 맞다고 가정하면 잘 작동합니다.

DECLARE @NewIdent Int 
SET @NewIdent = SCOPE_IDENTITY() 
+3

캐스트가 NewIdent에 할당하는 과정에서 처리되었지만 여전히 캐스팅 중입니다. – lowerkey

+0

그것은 나를 위해, SQL2016, 그냥 10 진수 (18,0) 나를 위해 작동하지 않습니다, 나는 int로 변환했다 –

12
SELECT CAST(bigintcolumn AS int) 

는 캐스팅 할 필요가 없습니다, 신원이 속한 소스 열이 정수의 경우

+0

. T'was는 0을 반환합니다. –

2

그냥 이런 캐스트 :

select CAST(SCOPE_IDENTITY() as int) 

그리고 데이터 레이어 :

내가 그래도 작동하지 않는 이유를 잘 모르겠어요, 무슨 생각
reader.GetInt32(0); 
관련 문제