MySQL сгенерировал UID - PullRequest
2 голосов
/ 20 марта 2012

Я кодирую систему обмена сообщениями и не хочу, чтобы показывались короткие идентификаторы. Может ли MySQL сгенерировать UID, который является уникальным, как предполагает UID?

Мне нужно знать, как яможет сделать это ТОЛЬКО с MySQL, без PHP, JavaScript или чего-либо еще, только с MySQL, если это невозможно, хорошо, я просто хочу убедиться.

Извините, мне следовало бы сделать это более понятным, когда я говорю UIDЯ просто имею в виду «Уникальный идентификатор», но мне нужен только многозначный номер, например, 914888629, 3890692140

Ответы [ 2 ]

15 голосов
/ 20 марта 2012

MySQL имеет функцию для этого.Попробуйте:

SELECT UUID();
3 голосов
/ 20 марта 2012

Если вам не нужны глобально уникальные идентификаторы, просто уникальный идентификатор (каждый раз, когда вы его вызываете, каждый раз по-разному), тогда вы можете создать таблицу с только целым столбцом, не равным NULL, и выполнить два следующих запроса:

INSERT INTO tbl1 SET col1 = NULL;
SELECT LAST_INSERT_ID();

Чтобы номер начинался с чего-то отличного от 1, например, начинался с 10 цифр, установите его следующим образом:

ALTER TABLE tbl1 AUTO_INCREMENT = 1000000000
...