2012-01-18 2 views
0

기존 테이블이 Employee이고 새 열 Employee_Id을 추가해야합니다. EmployeeId은 10 자리 고유 번호 여야하며 항상 10부터 시작해야합니다. 값을 생성 된 고유 ID에 연결

1000000000 
1000000001 
1023456789 

예를

를 들어

그래서 난 이미 데이터가 기존 테이블에 고유의 10 자리 번호의의 무리를 추가해야합니다.

누구든지 나를 해결할 수 있습니까?

답변

2

SQL Server를 사용하는 경우 IDENTITY가 도움이됩니다.

http://msdn.microsoft.com/en-us/library/ms186775.aspx

업데이트 : 당신은 테이블을 변경하기 위해 여기에 설명을 참조한다.

Adding an identity to an existing column

+0

전체 데이터가 올바르게 다시 삽입되지 않으면 기존 데이터가 도움이되지 않습니다. – naresh

+0

다음은 비슷한 논의가 있습니다. 이건 어때? http://stackoverflow.com/questions/1049210/adding-an-identity-to-an-existing-column –

+0

하지만 그 중 하나가 이미있는 경우 OP에서 언급하지 않았습니다. @ user1078389 기본 키가 있으십니까? –

1
ALTER TABLE YOURTABLE 
ADD COLUMNNAME INTEGER IDENTITY(1000000000, 1) 

는 10 모두를 생성하지 않습니다 ..하지만 그것은 당신이 (11)를 얻을 것이다 건네받을 경우는, 알에게 가능성을 생성합니다 ..하지만 그 도달하는 수 많은 것 .

는이 새로운 ID에 대한 여분의 열이 기존 테이블에서 데이터를 얻을 것이다

+0

SQL 서버의'integer' ->'int'. –

4
SELECT 1000000000 + ROW_NUMBER() OVER(ORDER BY YourColumn) AS 'rownumber',* 
    FROM Employee 

도움이되기를 바랍니다.

2

정수 PK가 이미있는 경우 계산 된 열을 추가 할 수 있습니다 (유지 여부). pk가 1000000000보다 크지 않다면이 값은 PK + 1000000000이됩니다.