ODBC functions을 통해 Oracle 9i 데이터베이스를 사용하는 PHP로 작성된 레거시 애플리케이션에 새로운 기능을 추가하고 있습니다. 자동 증분 ID를 생성하는 시퀀스 및 트리거가있는 테이블을 만들었습니다.ODBC를 통해 자동 증가 ID 검색
이- 는 ODBC 라이브러리 전용
lastInsertId
방법이 표시되지 않습니다 지금, 내가 삽입을하고 이후에 생성 된 ID를 얻을 수있는 방법을 찾기 위해 사투를 벌인거야. RETURNING
절을 사용하여 쿼리를 실행하면ORA-00439: feature not enabled: RETURNING clause from this client type
이 트리거됩니다.BEGIN...END
블록에 동봉하면RETURNING
절을 실행할 수 있지만 조금 도움이됩니다 : OUT parameters are apparently not supported by the Unified ODBC driver PHP uses.
나머지 트랜잭션에서 시퀀스 이름을 하드 코드하여 SEQ_NAME.CURRVAL
을 사용해야합니까? 동시 액세스가 있어도 적절한 가치를 얻으려면 어떻게해야합니까?
업데이트 :이
오라클 또는 Microsoft의 OLE DB 구현 중 어느 것을 사용하고 있습니까? – APC
@APC - Oracle 용 Microsoft ODBC 드라이버. 내가 아는 한 OLE가 아닙니다 (제 자신이 관리하지 않는 타사 서버입니다). –
안녕하세요 알바로 - 응답을 입력하는 동안 질문을 변경했습니다. 8-) MSDAORA를 사용하고 있습니까? – APC