gpt4 book ai didi

mysql_insert_id 或类似的东西返回最后一个 mysql UUID()

转载 作者:可可西里 更新时间:2023-11-01 08:55:50 25 4
gpt4 key购买 nike

您如何返回最后生成的 UUID()(主键)- 有类似 mysql_insert_id 的东西吗?

uuidtable:

primary key: uuid uuid()id_u (index): integer

多个id_u匹配一个主键uuid()

插入:插入 uuidtable (uuid,id_u) 值 (uuid(),id)

当然,其中 id 是一个数字,uuid 被转义为

 uuid 

最佳答案

像这样给自己写一个触发器:

CREATE TRIGGER ai_uuidtable
AFTER INSERT ON uuidtable
FOR EACH ROW
SET @last_uuid = NEW.uuid;

插入后:

SELECT @last_uuid

MySQL 的用户定义变量是特定于连接的,因此您不必担心获取另一个连接的@last_uuid

关注点:如果您使用 uuid 作为键,为了使其性能最大化,它应该存储为 16 字节的 binary 字段而不是 36 -byte char 字段。如果你真的想使用 MySQL 的 UUID() 算法,去掉连字符和 UNHEX() 它:

UNHEX( REPLACE( UUID(), '-', '' ) )

旁白:PostgreSQL 实际上有一个 UUID 数据类型(但没有内置的 UUID() 函数),这只是意味着你不必重新 HEX() 字段,以避免在 SELECT 上的终端中出现二进制垃圾。

关于mysql_insert_id 或类似的东西返回最后一个 mysql UUID(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4687196/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com