반응형
Oracle에서 ID 열을 재설정하는 방법
아이덴티티가 있는 컬럼이 있는데 카운트는 19546542이고 모든 데이터를 삭제한 후 리셋하고 싶습니다.ms sql에서 'dbcc checkident' 같은 것이 필요하지만 Oracle에서는 필요합니다.
Oracle 12c 이상 버전에서는 다음과 같은 세 가지 방법으로 수행할 수 있습니다.
- 시퀀스의 다음 값을 특정 값으로 수동 재설정:
ALTER TABLE [TableName] MODY(ID를 ID로 생성(1부터 시작));
- 시퀀스의 다음 값을 최대 ID 값으로 자동 재설정합니다.
[TableName] ALTERTABLE [TableName] ID를 ID로 기본 생성(제한 값으로 시작);
위의 두 경우 모두 ID 열에 값이 있는 데이터를 삽입할 수 있습니다.
insert into [TableName] (ID, Name) VALUES (1, 'Name1');
insert into [TableName] (ID, Name) VALUES (2, 'Name2');
- 시퀀스의 다음 값을 최대 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
반응형
'programing' 카테고리의 다른 글
varchar 대신 varchar가 아닌 varvinary인 이유 (0) | 2023.10.11 |
---|---|
객실 유지 라이브러리.모두삭제 (0) | 2023.10.11 |
동일한 테이블의 열에 외래 키 제약 조건 적용 (0) | 2023.10.11 |
번역 문자열을 각번역으로 가장 잘 구성하는 방법은? (0) | 2023.10.11 |
내용과 정확하게 일치하는 요소 선택 (0) | 2023.10.11 |