При вставке строки в таблицу со столбцом первичного ключа с автоинкрементом, есть ли способ получить значение, которое будет присвоено этой строке?
Чтобы было понятно, я хочу использоватьэто значение как часть строки для другого столбца в той же строке.
Выполнение MAX (id) + 1 не кажется достаточно надежным.И делать вставку, а затем обновление с помощью LAST_INSERT_ID () плохо, потому что это 2 отдельных вызова БД.
Спасибо
РЕДАКТИРОВАТЬ :
Что делаетвсе думают об этом:
INSERT INTO `mydatabase`.`mytable` (`name`, `description`)
VALUES
(
CONCAT(
'name-',
CAST(
(SELECT
`auto_increment` + 1
FROM
`information_schema`.`TABLES`
WHERE `TABLE_SCHEMA` = 'mydatabase'
AND `TABLE_NAME` = 'mytable') AS CHAR
)
),
'description of this thing'
) ;
Таким образом, вы должны получить строку с id
из 5, например, и name
из "name-5".Это немного грязный способ, но он должен работать, не так ли?
Мысли?