pg_last_oid() використовується для отримання OID, призначеного вставленому рядку. Поле OID стало необов’язковим полем із PostgreSQL 7.2 і не буде присутнім за замовчуванням у PostgreSQL 8.1. Якщо поле OID відсутнє в таблиці, програміст повинен використовувати pg_result_status(), щоб перевірити успішність вставки.
У процедурному методі MySQLi ви можете отримати ідентифікатор за допомогою:
- // Створення з'єднання.
- $conn = mysqli_connect($servername, $username, $password, $dbname);
- //записати тут логіку вставки.
- //щоб отримати останній вставлений ідентифікатор, використовуйте це…
- $last_id = mysqli_insert_id($conn);
Якщо надати аргумент LAST_INSERT_ID(), він поверне значення виразу, а наступний виклик LAST_INSERT_ID() поверне те саме значення. Значення також буде надіслано клієнту, і до нього можна буде отримати доступ функція mysql_insert_id.
Що стосується SQL, я вірю, що ви використовуєте поточний сучасний спосіб отримання останнього вставленого рядка за допомогою postgresql. CURRVAL() і LASTVAL() вимагає додаткової поїздки в обидві сторони, тоді як використання RETURNING дозволить отримати те, що ви хочете, лише за один дзвінок.
Щоб отримати останній вставлений ідентифікатор за допомогою PDO, ви можете скористатися Метод PDO::lastInsertId() після вставки рядка в базу даних.
pg_last_oid() використовується для отримання OID, призначеного вставленому рядку. Поле OID стало необов’язковим полем із PostgreSQL 7.2 і не буде присутнім за замовчуванням у PostgreSQL 8.1. Якщо поле OID відсутнє в таблиці, програміст повинен використовувати pg_result_status(), щоб перевірити успішність вставки.