
getLastInsertId 메서드가 작동하지 않는 이유는 여러 가지가 있을 수 있지만, 가장 일반적인 이유는 다음 두 가지입니다.
1. AUTO_INCREMENT 칼럼이 설정되지 않은 경우: getLastInsertId 메서드는 AUTO_INCREMENT 칼럼의 ID 값을 반환합니다. AUTO_INCREMENT 칼럼이 설정되지 않은 경우, getLastInsertId 메서드는 NULL을 반환합니다. 따라서 AUTO_INCREMENT 칼럼을 설정해야 합니다.
2. INSERT 문이 COMMIT되지 않은 경우: getLastInsertId 메서드는 COMMIT된 INSERT 문에서 생성된 ID 값을 반환합니다. INSERT 문이 COMMIT되지 않은 경우, getLastInsertId 메서드는 NULL을 반환합니다. 따라서 INSERT 문을 COMMIT해야 합니다.
예를 들어, 다음 코드를 실행했을 때 getLastInsertId 메서드는 NULL을 반환합니다.
위의 코드에서 getLastInsertId 메서드가 작동하지 않는 이유는 AUTO_INCREMENT 칼럼이 설정되지 않았거나 INSERT 문이 COMMIT되지 않은 때문입니다.
해결 방법은 다음과 같습니다.
위의 코드에서 AUTO_INCREMENT 칼럼을 설정하고 INSERT 문을 COMMIT하여 getLastInsertId 메서드가 작동하도록 합니다.
2025-03-24 14:14