我知道有很多关于你是否应该在PKs或任何地方使用UUID的帖子和信息。这不是我的问题。
假设我们有一个表,它有一个varchar(36)列来存储UUID。我的问题很简单,如果我们假设应用程序不关心它是以哪种方式完成的,那么哪个更好:
1)通过表上的触发器将新的UUID放入每一行
或
2)使用UUID()函数通过insert查询将新的UUID直接插入到每一行中,例如"insert into mytable values (UUID())“或"set @var=UUID();insert into mytable values (@var);
MySQL 5.7.x,如果重要的话。
发布于 2018-02-22 13:29:23
只需使用第二个选项。在使用触发器的insert查询中可以直接、轻松地完成的工作是没有意义的。您仍将在触发器中调用UUID函数。第一种方法比第二种方法稍微复杂一些,它不会帮助提高性能。
第一种方法利用DRY (不要重复自己)原则,这是一种很好的编程实践。它还确保所有ID都是真正的UUID。
https://stackoverflow.com/questions/48919601
复制相似问题