'laminas-db + PostgreSQL'에서 getLastInsertValue() 메소드

 

Laminas MVC 프레임워크의 laminas-db 컴포넌트에서 DB에 가장 최근에 입력된 데이터의 ID(자동증가 프라이머리 키값)을 알아내기 위해서는 getLastInsertValue() 메소드를 사용합니다. 그런데, DBMS로 PostgreSQL을 사용하는 경우에는 이 메소드 사용을 위해 테이블 게이트웨이 객체 생성시 아래와 같이 SequenceFeature 객체를 추가로 넘겨주어야 합니다.

use Laminas\Db\TableGateway\Feature\SequenceFeature;
...
...
...
$table = new TableGateway(
    'table_name',
    $dbAdapter,
    new SequenceFeature($primaryKeyField, $sequenceName)
);