Миграции Doctrine: как получить значение сразу после вставкиPhp

Кемеровские программисты php общаются здесь
Ответить
Anonymous
 Миграции Doctrine: как получить значение сразу после вставки

Сообщение Anonymous »

У меня есть класс миграции доктрины со стандартным методом up, например:

Код: Выделить всё

$this->addSql("INSERT INTO `mytable` (`name`) VALUES ('myvalue')");

$res = $this->em->createQueryBuilder()
->select('a')
->from(MyEntityClass::class, 'a')
->where("a.name = :name")
->setParameter('name', 'myvalue')
->getQuery()
->getResult();
$id = $res[0]->getId();

//some other operation using $id...

при запуске этого кода я получил ошибку: Примечание: неопределенное смещение: 0
если я вручную проверю базу данных, значение не будет вставлено.< /p>
Однако, если я закомментировал блок с помощью запроса выбора, значение будет правильно сохранено в таблице.
Похоже, что это запрос в addSql все выполняются в конце скрипта, есть ли способ получить значение сразу после его сохранения в базе данных?

Подробнее здесь: https://stackoverflow.com/questions/689 ... ter-insert
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Php»