Я понимаю, что есть много потоков и информации о том, следует ли использовать UUID для ПК или где угодно. Это НЕ мой вопрос.
Предположим, у нас есть таблица с столбцом varchar (36) для хранения UUID. Мой вопрос прост, что лучше, если предположить, что приложение не заботится о том, как это сделать:
1) Поместите новый UUID в каждую строку с помощью триггера на столе
ИЛИ ЖЕ
2) Вставьте новый UUID в каждую строку непосредственно через запрос вставки, используя функцию UUID(), такую как "вставить в значения mytable (UUID())" или "set @var = UUID"(), вставить в значения mytable (@var );
MySQL 5.7.x, если это имеет значение.
Просто пойдите со вторым вариантом. Нет смысла делать работу, которую вы можете прямо и просто сделать в запросе на вставку с помощью триггера. Вы все равно будете вызывать функцию UUID в триггере. Первое немного сложнее второго, это не поможет повысить производительность.
Первый метод использует принцип DRY (Do not Repeat Yourself), который является хорошей практикой программирования. Он также гарантирует, что все идентификаторы являются действительно UUID.