테스트 사이트 - 개발 중인 베타 버전입니다

데이터베이스 질문입니다 채택완료

kmd2410 3년 전 조회 2,443

안녕하세요

mb_no auto increment 초기화 하고 재정렬 하고싶은데,

ALTER TABLE member AUTO_INCREMENT=1; 사용하면 다른 컬럼 디폴트 때문에 안된다해서

그 컬럼 디폴트값 변경하려하면 다른 컬럼 디폴트값 이상하다고 무한 반복중인데...

강제로 정렬 하는 방법이 있을까요..?

또는 admin과 master 계정을 제외하고 테이블을 비울수가 있을까요 ?

댓글을 작성하려면 로그인이 필요합니다.

답변 4개

채택된 답변
+20 포인트

ALTER TABLE member AUTO_INCREMENT=mb_no최대값+1 ;

이렇게 해야 합니다.

 

te01 회원 mb_no를 3으로 바꾸면

ALTER TABLE member AUTO_INCREMENT=4 ;

 

이렇게 되겠죠.

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

k
kmd2410
3년 전
감사합니다 선생님!!
오늘도 좋은하루 보내셔요!!~

댓글을 작성하려면 로그인이 필요합니다.

3년 전

truncate table 테이블명;

 

이렇게 하시면 auto_increment 값도 같이 리셋됩니다~

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

k
kmd2410
3년 전
답변 감사합니다 선생님!^^
좋은 하루되세요!

댓글을 작성하려면 로그인이 필요합니다.

3년 전

데이터가 많지 않다면 다음의 절차대로 하시는것도 방법입니다.

1. 데이터를 백업 받는다.

2. 테이블을 지우거나 삭제하고 새로 만든다. 이때 auto_increment 설정

3. 백업 받은 데이터를 수정또는 auto 컬럼만 제외한다.

4. 3의 데이터를 새로운 테이블에 넣는다.

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

k
kmd2410
3년 전
감사합니다 선생님!^^

댓글을 작성하려면 로그인이 필요합니다.

스피드S
3년 전

백업은 필수...

</p>

<p>mysql> SET @count=0;   //카운트초기화

mysql> UPDATE member SET mb_no=@count:=@count+1;   //재정렬

mysql> ALTER TABLE membe AUTO_INCREMENT=다시 시작할 숫자;  // AUTO_INCREMENT 시작할 숫자</p>

<p>

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

k
kmd2410
3년 전
선생님 답변감사합니다!
쿼리문 돌리면 다른컬럼에서 유효하지 못한 디폴트 값을 사용 하였다고 막혀요 ㅠㅠ
다른컬럼 디폴트값 변경하려면 또 다른컬럼이 유효하지 못한 디폴트 값 사용하였다고 막히고...
어떤 방법이 있을까요ㅠㅠ...

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인