2011-07-05 3 views
0

나는 몇몇 값이 이미있는 몇몇 필드 F2, F3 (Columns)이있는 테이블 (T1)이 있습니다 .....PHP를 사용하여 SQL에서 필드 증가시키기

테이블 (T1)에 새 필드 (F1)를 추가해야하며 F1이 기본 키가됩니다.

필드 유형 F1은 정수입니다.

F1의 첫 번째 행에 임의의 8 자리 숫자를 할당했으며 나머지 행은 이전 행에서 1 씩 증가해야합니다. 이 증가분은 다른 필드 F2, F3 등과 동일해야합니다 ...

완전히 새로운 행이 테이블에 추가되면이 F1도 증가해야합니다.

나는 PHP에서 lastinsertid()를 사용해 보았지만 새로 생성 된 행에서만 작동합니다.

위의 코드를 lastinsertid()를 사용하여 작성하는 데 도움이 될 수 있습니까?

는 명확하지 plzz은 MySQL을 사용하는 경우 나 ..

+0

은 쉽게하지 않을까요 사용 결코 id를 사용하지 않는하여 문자열 척 정수 증가? 그런 다음 새 행이 자동으로 추가 될 때마다 증가합니다. –

+0

나는 당신을 돕고 싶습니다만, 당신이 의미하는 것이 정말로 분명하지 않습니다. 2 개의 열이있는 기존 테이블이 있고 그 테이블에 새 열을 추가하고 싶습니까? F1을 auto_increment로 설정하면 이전 행의 id에 1이 자동으로 추가됩니다. 따라서 INSERT (F2, F3) VALUES ('val1', 'val2'); F1이 자동으로 지정됩니다. – Jules

+0

글쎄 PHP에서 함수 lastInsertId 함수를 사용해야합니다. lastinsertid가하는 것은 마지막 삽입 된 행 또는 시퀀스 값의 ID를 반환합니다. –

답변

4

알려 경우 :

ALTER TABLE myTable 
AUTO_INCREMENT = 1677216 , 
ADD COLUMN F1 INT PRIMARY KEY AUTO_INCREMENT ; 

기존 행이 F1 필드가 자동으로 1677216부터, IDS로 가득 할 것이다.


당신이 정수가 아닌 문자열 걱정하는 경우, 그것이 자동으로`F1`을 설정 만 RIGHT(id,8)

관련 문제