Что ж, если вы дважды наберете UUID()
и получите те же результаты, самым проблематичным будет то, что "материал сломан" (тм). Он должен быть уникальным и должен быть всегда, насколько я знаю.
Не было бы доступного кода «регенерировать»: функция предназначена для создания уникальных ключей даже на разных компьютерах, так как же узнать, что ее результат не уникален?
от http://dev.mysql.com/doc/refman/5.0/en/miscellaneous-functions.html#function_uuid
UUID представляет собой число, уникальное в глобальном масштабе и
время. Ожидается, что два вызова UUID () сгенерируют два разных
значения, даже если эти вызовы выполняются на двух отдельных компьютерах
которые не связаны друг с другом.
Может быть, вы имеете в виду что-то еще? Например, если вы используете UUID()
для генерации чего-то, что должно быть уникальным (например, первичный ключ или уникальное поле и т. Д.), И вы ранее добавили тот же номер (как, например, один раз вы вызывали UUID()
, но вставили что-то дважды), тогда вы просто получите ошибку по умолчанию, которую получаете при добавлении неуникального контента в место, которое должно быть уникальным. Вы не получите новый.
некоторые материалы для чтения об уникальности:
руководство. Прочитайте его, и как он использует различные части для генерации uuid
.: http://dev.mysql.com/doc/refman/5.0/en/miscellaneous-functions.html#function_uuid
Проверьте ссылку в этом руководстве на фактическое определение (но это довольно читаемо, так что вы можете пропустить это): https://www2.opengroup.org/ogsys/jsp/publications/PublicationDetails.jsp?catalogno=c706
Некоторые более простые для понимания метрики вероятности дубликатов здесь: http://en.wikipedia.org/wiki/Universally_unique_identifier
на сайте mysql (форумах и т. Д.) Тоже есть разговоры об использовании его в качестве первичного ключа, но, поскольку я на работе и у меня мало времени, вам нужно искать это самостоятельно:)