[MySQL] Как узнать id только что сделанной записи?

Vlad77

Есть две таблицы. Одна с id, который ставится автоматически, и,скажем, с фамилией. Другая таблица с id, который не автоматический и должен соответствовать id из первой таблицы, и,скажем, с именем. Как можно достичь соответствия id? Можно ли записать фамилию и имя в эти две таблицы одним запросом?

sergey_m

> Как узнать id только что сделанной записи?
Зависит от интерфейса к базе. В p5-DBI например это зовётся $dbh->{'mysql_insertid'}, где $dbh - database handler, с помощью которого был сделан последний insert.
> Можно ли записать фамилию и имя в эти две таблицы одним запросом?
Нет, в MySQL такого сделать нельзя.

ruler

Может, его устроит транзакция?

sergey_m

А в MySQL такое есть?

ruler

Точно не уверен, но, вроде бы, для InnoDB есть.

bobby

да
с 3.23.xx есть BEGIN WORK и BEGIN, которые начинают транзакцию, с 4.0.xx есть START TRANSACTION (то же самое )
ну и COMMIT/ROLLBACK

bobby

для InnoDB и BDB

a10063

Как узнать id только что сделанной записи?
ищи в мане по слову LAST_INSERT_ID или LASTINSERTID - не помню точно, а глянуть негде пока

Elina74

Да, точно LAST_INSERT_ID
Только что пользовался... :-)

Vlad77

Всем большое спасибо!

Vlad77

В этом форуме можно закрывать тему?
Оставить комментарий
Имя или ник:
Комментарий: