4
두 개의 테이블에 하나의 레코드를 삽입합니다. 첫 번째 삽입 삽입 할 기본 키 값을 가져 오는 주 테이블에 레코드를 넣습니다. 이제이 레코드의 일부 필드를 주 테이블의 키 값을 포함한 다른 테이블에 넣어야합니다. 어떻게해야합니까?방금 삽입 한 레코드의 pkey 값을 얻을 수 있습니까 (autoincrement)?
두 개의 테이블에 하나의 레코드를 삽입합니다. 첫 번째 삽입 삽입 할 기본 키 값을 가져 오는 주 테이블에 레코드를 넣습니다. 이제이 레코드의 일부 필드를 주 테이블의 키 값을 포함한 다른 테이블에 넣어야합니다. 어떻게해야합니까?방금 삽입 한 레코드의 pkey 값을 얻을 수 있습니까 (autoincrement)?
"SELECT LAST_INSERT_ID();
"은 생성 된 마지막 자동 증가 ID를 반환합니다.
그리고 스레드로부터 안전한 방법으로이를 수행 할 수 있습니까? – akosch
LAST_INSERT_ID()는 스레드로부터 안전합니다. 그것은 연결 단위로 저장되므로 다른 연결의 insert 문은 그 값에 영향을 미치지 않습니다. –
akosch가 스레드 (yuck)간에 연결을 공유하는 경우 insert는 last_insert_id()를 반환하는 저장 함수에 있어야 할 수 있습니다. – ysth