
PDO::exec는 INSERT 문을 실행할 때 ID 값을 얻을 수 없습니다.
이유는 PDO::exec는 SQL 명령을 실행하고 결과를 반환하지 않기 때문입니다.
대신에 PDO::query를 사용하여 INSERT 문을 실행할 수 있습니다.
예를 들어, 다음과 같이 사용할 수 있습니다.
#hostingforum.kr
php
$stmt = $pdo->query("INSERT INTO 테이블명 (컬럼명1, 컬럼명2) VALUES ('값1', '값2')");
이때, ID 값을 얻으려면 LAST_INSERT_ID() 함수를 사용할 수 있습니다.
예를 들어, 다음과 같이 사용할 수 있습니다.
#hostingforum.kr
php
$stmt = $pdo->query("INSERT INTO 테이블명 (컬럼명1, 컬럼명2) VALUES ('값1', '값2')");
$id = $pdo->lastInsertId();
또한, PDO::exec를 사용할 때 ID 값을 얻기 위해 사용하는 방법은 PDO::query를 사용할 때와 다를 수 있습니다.
예를 들어, PDO::exec를 사용할 때 ID 값을 얻기 위해 LAST_INSERT_ID() 함수를 사용할 수 없습니다.
대신에, PDO::query를 사용할 때와 같이 LAST_INSERT_ID() 함수를 사용할 수 있습니다.
#hostingforum.kr
php
$stmt = $pdo->exec("INSERT INTO 테이블명 (컬럼명1, 컬럼명2) VALUES ('값1', '값2')");
$id = $pdo->lastInsertId();
이때, PDO::exec를 사용할 때 ID 값을 얻기 위해 사용하는 방법은 PDO::query를 사용할 때와 동일합니다.
즉, LAST_INSERT_ID() 함수를 사용하여 ID 값을 얻을 수 있습니다.
2025-06-26 08:20