라이브러리
[PHP] SqlStatementResult::getGeneratedIds - 생성된 ID 가져오기
SQL Statement Result의 getGeneratedIds() 메소드는 SQL 쿼리에서 AUTO_INCREMENT, IDENTITY, SEQUENCE, 또는 USER-DEFINED 함수를 사용하여 생성된 ID를 반환합니다. 이 메소드는 PHP의 PDO (PHP Data Objects) 확장에서 사용할 수 있습니다.
getGeneratedIds() 메소드 사용법
getGeneratedIds() 메소드는 SQL 쿼리에서 생성된 ID를 반환합니다. 이 메소드는 PDOStatement 객체의 결과로 반환됩니다.
# 예제 1: AUTO_INCREMENT 사용
#hostingforum.kr
php
// PDO 연결 설정
$db = new PDO('mysql:host=localhost;dbname=mydb', 'username', 'password');
// SQL 쿼리 실행
$stmt = $db->prepare('INSERT INTO users (name, email) VALUES (:name, :email)');
$stmt->bindParam(':name', 'John Doe');
$stmt->bindParam(':email', 'john@example.com');
$stmt->execute();
// 생성된 ID를 가져옵니다.
$generatedId = $stmt->getGeneratedIds()[0];
echo "생성된 ID: $generatedId";
# 예제 2: IDENTITY 사용
#hostingforum.kr
php
// PDO 연결 설정
$db = new PDO('sqlserver:host=localhost;dbname=mydb', 'username', 'password');
// SQL 쿼리 실행
$stmt = $db->prepare('INSERT INTO users (name, email) VALUES (:name, :email)');
$stmt->bindParam(':name', 'John Doe');
$stmt->bindParam(':email', 'john@example.com');
$stmt->execute();
// 생성된 ID를 가져옵니다.
$generatedId = $stmt->getGeneratedIds()[0];
echo "생성된 ID: $generatedId";
# 예제 3: SEQUENCE 사용
#hostingforum.kr
php
// PDO 연결 설정
$db = new PDO('oracle:host=localhost;dbname=mydb', 'username', 'password');
// SQL 쿼리 실행
$stmt = $db->prepare('INSERT INTO users (name, email) VALUES (:name, :email)');
$stmt->bindParam(':name', 'John Doe');
$stmt->bindParam(':email', 'john@example.com');
$stmt->execute();
// 생성된 ID를 가져옵니다.
$generatedId = $stmt->getGeneratedIds()[0];
echo "생성된 ID: $generatedId";
주의사항
* getGeneratedIds() 메소드는 PDOStatement 객체의 결과로 반환됩니다. 따라서 SQL 쿼리 실행 후에만 사용할 수 있습니다.
* 생성된 ID를 가져올 때, IDENTITY, SEQUENCE, 또는 USER-DEFINED 함수를 사용하는 경우, getGeneratedIds() 메소드는 여러 ID를 반환할 수 있습니다. 이 경우, ID를 배열로 반환합니다.
* getGeneratedIds() 메소드는 PDO 5.3 이상 버전에서만 사용할 수 있습니다. 이전 버전에서는 사용할 수 없습니다.
-
- 나우호스팅 @pcs8404
-
호스팅포럼 화이팅!
댓글목록
등록된 댓글이 없습니다.