lastInsertId (tableName_id_seq) возвращение: неопределенная таблица: 7 ОШИБКА: отношение "tableName_id_seq" не существует - PullRequest
0 голосов
/ 04 февраля 2019

вставка данных в мою таблицу в foreach, и мне нужно вставить последний идентификатор.

Я вставляю первый объект, получаю идентификатор и вставляю дочерний объект, связанный с этим идентификатором.

База данных POSTGRES - ENV Symfony 4

Код:

$conn = $em->getConnection();
//Here i do an Insert ( always an INSERT )
$Id = $conn->lastInsertId('tableName_id_seq');

Это возвращение: неопределенная таблица: 7 ОШИБКА: отношение "tableName_id_seq" не существует

Iя чувствую, что моя последовательность не создана в БД. Я не закрываю связь перед вызовом lastInsertID. Всегда вставлять до lastInsertID

Этот запрос:

select sequence_schema, sequence_name from information_schema.sequences;

Возврат 0 строк

Ответы [ 2 ]

0 голосов
/ 05 февраля 2019

Ну, никак не используя lastinsertId (), я нашел способ использовать

RETURNING id 

в запросе, а затем после

$preparedQuery->execute()

я делаю

$preparedQuery->fetchAll()
0 голосов
/ 04 февраля 2019

С MySQL вам не нужно предоставлять tableName_id_seq

Можете ли вы просто попробовать $Id = $conn->lastInsertId();

...