자동 증분으로 설정된 id 필드가있는 테이블이 있습니다. 그러나자동 증가를 다시 시작합니다.
은, 왜, 그리고 일어나는 것을 방지 할 수있는 방법이 첫 번째 새 레코드 ID 번호 (11)
될 것입니다 내가 10 개 레코드를 삽입 말을 한 다음 테이블을 비우?
자동 증분으로 설정된 id 필드가있는 테이블이 있습니다. 그러나자동 증가를 다시 시작합니다.
은, 왜, 그리고 일어나는 것을 방지 할 수있는 방법이 첫 번째 새 레코드 ID 번호 (11)
될 것입니다 내가 10 개 레코드를 삽입 말을 한 다음 테이블을 비우?
자동 증가가 모든 레코드를 삭제하고 자동 증가 필드를 재설정 삭제
TRUNCATE TABLE tbl_name
다음 자동으로 재설정되지 않았거나 당신이
ALTER TABLE tbl_name AUTO_INCREMENT=1
을 사용할 수 있습니다 그들은 referential integrity을 유지하는 그런 식으로 행동합니다. 예를 들어 기본 및/또는 외래 키 제약 조건을 위반할 수 있으므로 ID 열의 번호를 다시 매기겠다고 결정할 수는 없습니다. 기사를 확인해보세요, 아마도 더 의미가 있습니다. 관계형 데이터베이스 세계에서 초보자를 대상으로 한 심층적 인 주제입니다.
방금 시작한 경우 제약 조건에 대한 더 많은 연구를하고 일반적으로 relational database modeling을 제안 할 것입니다.
"스마트"로 id 필드를 설정할 수있는 방법이 있습니까? 즉, 마지막 레코드가 id 11인데 삭제하면 새 레코드는 12 대신에 11의 id로 레코드되어야합니다. – Jacob
@Jacop - 정말 아닙니다. 'ALTER TABLE tbl_name AUTO_INCREMENT = n'을 사용하여 마지막 행을 삭제할 때 직접 할 수도 있지만 일반적으로 순서에 간격이있을 것이라는 조건으로 오는 것이 가장 좋습니다. 응용 프로그램에 차이가 있습니까? –
아무런 차이가 없었습니다. 정말 미적 감각이었습니다. 당신의 대답에 감사드립니다. – Jacob