Аналог GUID для Linux

Slon747

Новичок
Аналог GUID для Linux

Требуется синхронизировать базу MySQL (Linux) с базой 1С.
Можно ли средствами Linux/PHP/MySQL создать уникальный идентификатор, который имея такую же длину заведомо не совпадал бы с GUID (на Windows)?
 

Panchous

Павел
GUID - уникальный, т.е. сгенерить совпадающий с уже существующим тебе не удастся.
 

Slon747

Новичок
Я понимаю. Мне как раз и нужно, чтоб не совпал с существующим в Windows.
Но ведь GUID можно получить только под Windows.
Не так ли?
 

Slon747

Новичок
2 Panchous
Ну как же обеспечено?
На Linux я могу создать 16-ти байтовую строку, исходя из timestamp и еще чего-то.
А в базе, где используется GUID возможно уже есть это значение. Вряд ли конечно, но исключать нельзя.

2 ТопольМ
Как?
 

Panchous

Павел
На Linux я могу создать 16-ти байтовую строку, исходя из timestamp и еще чего-то.
А в базе, где используется GUID возможно уже есть это значение. Вряд ли конечно, но исключать нельзя.
Повторяю, это исключено!
Генери свой ИД как хочешь.
Еще есть вопросы?
 

ТопольМ

Новичок со стажем
На Linux я могу создать 16-ти байтовую строку, исходя из timestamp и еще чего-то.А в базе, где используется GUID возможно уже есть это значение. Вряд ли конечно, но исключать нельзя.
Panchous прав
Но если уж так боишься, что могут совпасть, то что мешает использовать 17-байтовую строку???
 

Slon747

Новичок
To Panchous
Есть.
Как сгенерить свой ИД, чтобы он не совпал с GUID?
Если мой ИД и не мой GUID формируются по разным алгоритмам, то почему бы им не совпасть?
 

Slon747

Новичок
>Но если уж так боишься, что могут совпасть, то что мешает использовать 17-байтовую строку???
На PHP/MySQL cоздается документ.
Исходя из него создается документ в 1С 8.0.
Далее нужно сохранить связь между этими документами.
Чтобы упростить процесс, хочется создавать документ с уникальным номером, типа GUID. При создании документа в 1С, он должен создаваться с этим GUID.
Можно конечно поступить по другому. Например, создать еще один реквизит в документе 1С и т.д. Но разработчик 1С (тот, что строит под нас конфигурацию) резко против этого.
 

Panchous

Павел
создавать документ с уникальным номером
autoincrement
При создании документа в 1С, он должен создаваться с этим GUID.
Ты определись, чего хочешь: создать уникальный номер для документа своими руками или использовать для этого GUID?
 

Slon747

Новичок
Ну как же он не совпадет?
Одни 16-ти байтовые строки создаются по одному алгориму (GUID), исходя из тек. времени, mac-адреса и пр.
Эти строки действительно не совпадут между собой.
Но я же буду формировать строку по своему. Я не могу сформировать по такому же алгоритму, что и GUID.
И при этом, мои строки должны быть тоже 16 байт.
Так как же мои ИД и GUID в 1С не совпадут, хотя бы теоретически?

-~{}~ 13.12.05 10:05:

>Ты определись, чего хочешь: создать уникальный номер для документа своими руками или использовать для этого GUID?

Хочу использовать для этого GUID. Но разве Linux/PHP/MySQL это предоставляет?

Можн конечно поступить по другому. После создания документа в 1С, полученный GUID передавать в документ на MySQL. Но это усложняет синхронизацию
 

Panchous

Павел
Так как же они не совпадут, хотя бы теоретически?
Вероятность в 0.00000(1)% тебя устроит?
Хочу использовать для этого GUID.
Используй.
Но разве Linux/PHP/MySQL это предоставляет?
В гугле искал?
После создания документа в 1С, полученный GUID передавать в документ на MySQL.
Можно.
 

Slon747

Новичок
>чем?
Лишней передачей данных.
При этом нужно следить, чтобы документы в MySQL не остались без GUID (вдруг связь прервется после создания документа в 1С)
 

Slon747

Новичок
Да не трудно.
Просто, элегантнее было бы проводить синхронизацию за один заход.

>В гугле искал?
Еще раз поискал нашел для MySQL 5.0:
---
SELECT UUID();
---
Хотелось бы не зависеть от версии MySQL.
Если знаешь как - скажи, будь добр
 
Сверху