2017-04-04 1 views
0

현재 코드와 이전 코드가 들어있는 각 행에 고유 ID를 할당하는 코드는 다음과 같습니다. 그것은 잘 작동하는 것하지만 내 질문에 내가 새 코드로 업데이트 된 파일이 있다면, 어떻게 내가 그만 둔 곳에서 고유 ID를 재개합니까?기존 테이블에 고유 한 행 ID 추가

예를 들어 이러한 추가 행을 추가하면 노란색으로 강조 표시된 아래의 ID를 채우려면 어떻게해야합니까?

Example

CREATE PROCEDURE [dbo].[PI_Key_Create_Update] AS 
BEGIN 
Truncate Table RB_PI_Key_Assign 
Truncate Table RB_PI_Key_Link 

INSERT INTO RB_PI_Key_Assign 
SELECT 
ROW_NUMBER() OVER (ORDER BY RB_Code_L) AS PI_Key 
, RB_Code_L 
, RB_Code_L_P 
FROM Stage_RB_Previous 

INSERT INTO RB_PI_Key_Link 
SELECT 
    a.PI_Key 
, b.PI_Key as PI_KEY_P 
, a.RB_Code_L 
, a.RB_Code_L_P 

FROM RB_PI_Key_Assign a LEFT JOIN RB_PI_Key_Assign b ON (a.RB_Code_L_P=b.RB_Code_L) 

END 

감사

+0

id 필드는 신원이 확인되지 않으므로 수동으로 유지 관리 할 필요가 없습니까? – maSTAShuFu

답변

0

가장 먼저 열 이러한 유형의 신원 시드 또는 자동 증가해야한다. 당신은 그들을 유지할 필요가 없습니다.

아무런 이유없이 수동으로 업데이트 한 경우 특별한 것은 없습니다.

+0

감사합니다 maSTA. 고유 ID가 그 행에 머물러 있기를 바랍니다. 테이블을 업데이트했지만 행의 순서가 다른 경우 ID가 변경됩니까? – Myx

+0

ID는 변경되지 않으며이 필드의 동작을 변경하면 자동 증가합니다. 테이블을 자르면 다시 1로 재설정됩니다. 깨끗한 슬레이트 잘라 내기 테이블을 제공하고 순서에 따라 행을 삽입하려면 – maSTAShuFu

관련 문제