programing

Oracle에서 ID 열을 재설정하는 방법

subpage 2023. 10. 11. 20:43
반응형

Oracle에서 ID 열을 재설정하는 방법

아이덴티티가 있는 컬럼이 있는데 카운트는 19546542이고 모든 데이터를 삭제한 후 리셋하고 싶습니다.ms sql에서 'dbcc checkident' 같은 것이 필요하지만 Oracle에서는 필요합니다.

Oracle 12c 이상 버전에서는 다음과 같은 세 가지 방법으로 수행할 수 있습니다.

  1. 시퀀스의 다음 값을 특정 값으로 수동 재설정:

ALTER TABLE [TableName] MODY(ID를 ID로 생성(1부터 시작));

  1. 시퀀스의 다음 값을 최대 ID 값으로 자동 재설정합니다.

[TableName] ALTERTABLE [TableName] ID를 ID로 기본 생성(제한 값으로 시작);

위의 두 경우 모두 ID 열에 값이 있는 데이터를 삽입할 수 있습니다.

insert into [TableName] (ID, Name) VALUES (1, 'Name1');
insert into [TableName] (ID, Name) VALUES (2, 'Name2');
  1. 시퀀스의 다음 값을 최대 ID로 자동 재설정합니다.

ALTER TABLE [TableName] ID를 항상 ID로 생성(제한 값으로 시작);

그러나 이 경우 ID 열 값을 사용하여 삽입하는 것이 제한됩니다.

insert into [TableName] (Name) VALUES ('Name1');
insert into [TableName] (Name) VALUES ('Name2');

ID 열에 값을 전달하면 오류가 발생합니다.

ORA-32795: 생성된 always identity 열에 삽입할 수 없습니다.

언급URL : https://stackoverflow.com/questions/39295422/how-to-reset-identity-column-in-oracle

반응형