Is there some equivalent to PHP mysql_insert_id
to fetch the last inserted UUID() primary key? (I always get 0. It works for auto_inc integers though)
可以将文章内容翻译成中文,广告屏蔽插件可能会导致该功能失效(如失效,请关闭广告屏蔽插件后再试):
问题:
回答1:
No, last_insert_id() only retrieves that last generated auto_increment fields. You'll have to do a select uuid()
first, then do an insert using that uuid.
However, note that uuids can't be guaranteed to be unique - they're simply very unlikely to collide. If you do require uniqueness, then go with an auto_increment - they'll never be re-used within any single table.
回答2:
I found this quite short and simple solution:
set @id=UUID();
insert into <table>(<col1>,<col2>) values (@id,'another value');
select @id;