SQLinfo.ru - Все о MySQL

Форум пользователей MySQL

Задавайте вопросы, мы ответим

Вы не зашли.

#1 14.01.2017 13:00:33

vitaliy4us
Участник
Зарегистрирован: 14.01.2017
Сообщений: 2

Как узнать сгенерированный id записи в момент ее добавления?

Как узнать автоматически сгенерированный id записи в момент ее добавления для того, чтобы использовать ее в той же инструкции Insert? Например, я создаю новую запись, в поле photo которой должен быть указан путь к соответствующему файлу. Имени файла присваивается значение id записи. Получается, я должен сначала добавить запись, потом узнать ее автоматически сгенерированный id, а только потом уже в новой инструкции записать в соответствующее поле новой записи путь к файлу. Можно ли сделать все в одной самой первой инструкции INSERT?

Неактивен

 

#2 14.01.2017 13:33:32

vasya
Архат
MySQL Authorized Developer
Откуда: Орел
Зарегистрирован: 07.03.2007
Сообщений: 5829

Re: Как узнать сгенерированный id записи в момент ее добавления?

в новых версиях генерируемые колонки
в старых, емнип, можно с помощью триггера, используя new.id

Неактивен

 

#3 14.01.2017 15:18:43

vitaliy4us
Участник
Зарегистрирован: 14.01.2017
Сообщений: 2

Re: Как узнать сгенерированный id записи в момент ее добавления?

vasya написал:

в новых версиях генерируемые колонки
в старых, емнип, можно с помощью триггера, используя new.id

Погуглил триггеры и мне показалось, что это не будет проще, чем вставить сначала запись, потом узнать ее id, а потом использовать его для редактирования нужного поля. Или я ошибаюсь? По сути мне это нужно только в одном месте при создании новой записи. И еще одно уточнение - я использую базу данных derby.

Неактивен

 

#4 14.01.2017 17:10:25

vasya
Архат
MySQL Authorized Developer
Откуда: Орел
Зарегистрирован: 07.03.2007
Сообщений: 5829

Re: Как узнать сгенерированный id записи в момент ее добавления?

уточнение существенное, какие есть возможности в derby я не знаю
если в ней есть возможность реализовать задачу через генерируемые колонки или триггеры, то это используйте их

Неактивен

 

Board footer

Работает на PunBB
© Copyright 2002–2008 Rickard Andersson