2010-02-18 7 views
0

제목에 어려움을 겪었으므로 설명 드리겠습니다.값이 자동으로 증가하도록 MySQL 열을 변경하십시오.

내가하고있는 일은 jQuery UI를 사용하여 페이지에 정렬 가능한 목록 요소를 만드는 것입니다. 순서가 제출되면 PHP는 순서에 따라 목록 요소에 증가 값을 할당하고 기존 ID 열을 삭제하고 새 ID 열을 만들고 각 목록 요소 값 WHERE title = x를 삽입합니다. 이것은 올바른 ID 순서를 만들고 잘 작동합니다.

필자가 지금하고 싶은 것은 auto_increment로 컬럼을 변경하여 새로운 엔트리를 삽입 할 때 PHP 스크립트가 생성 한 가장 큰 숫자보다 하나 높은 숫자가 자동으로 할당된다는 것입니다. 나는 외래 키나 다른 것을 사용하지 않고이 간단한 테이블 만 사용합니다.

이것이 가능합니까?

+0

질문은 아마도 그것이 가능할 수도 가능할 수도있을뿐만 아니라 합리적이거나 심지어 바람직 할 수도 있습니다. "기존 ID 열을 삭제하고 새 ID 열을 만들고 각 목록 요소 값 WHERE title = x"부분을 삽입하는 것은 확실하지 않습니다. (나는 어쨌든 그것이 좋은 생각이라고 의심하지만, 아마 그것은 나 ...) 당신은 정교 할 수 있습니까? – VolkerK

답변

1

내 실수로, 나는 당신의 질문을 잘못 읽었습니다. 정렬 순서에 따라 번호 매기기를 제공하기 위해 데이터베이스 자체를 사용하고 싶지는 않습니다. 그러나 SQL 쿼리 자체를 사용하여 증가하는 필드를 반환 할 수 있습니다. 내가 그 정보로 업데이트됩니다 한 삼성 전자와 ... 좋아

, 여기있다 :

당신이 설정 @ N = 0과 같은 변수를 사용할 필요, SELECT @n : = @ N + 'N', COL1,

테이블

에서 COL2 로 1 그러나, 내가보기 엔 가능한 모든 경우에 당신이 당신의 PHP 코드에 번호를 작성하는 것이 좋습니다.

는 ---------------- 원래 포스트 ----------------

이 phpMyAdmin을 꽤 간단합니다. 당신이 그것을 설치할 수없는 경우 알려주고 필요한 SQL을 파헤 칠 것입니다.

모든 여하튼, 여기에 SQL이다 :

ALTER 테이블 t1 수정 F1의 INT (4) AUTO_INCREMENT ALTER TABLE TBL AUTO_INCREMENT = XXX; // xxx를 다음에 사용하는 ID로 변경하십시오

기존 데이터 세트에 따라 반대 순서로 실행해야 할 수도 있습니다. auto_increment의 값을 변경하지 않으면 auto_increment를 추가하지 못합니다. 아직 사용 중이 아닙니다.

+0

나는 이것을 제대로 말했는지 모르겠다. 나는 이것을 다시 시도 할 것이다. 도와 줘서 고마워! –

관련 문제