powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / IBM DB2, WebSphere, IMS, U2 [игнор отключен] [закрыт для гостей] / Генерация GENERATE_UNIQUE в ms_sql
2 сообщений из 2, страница 1 из 1
Генерация GENERATE_UNIQUE в ms_sql
    #39352145
Alexandr Tar.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Может быть, кто подскажет, можно ли сгенерировать функцию GENERATE_UNIQUE в ms_sql?
...
Рейтинг: 0 / 0
Генерация GENERATE_UNIQUE в ms_sql
    #39352327
CawaSPb
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alexandr Tar.Может быть, кто подскажет, можно ли сгенерировать функцию GENERATE_UNIQUE в ms_sql?
Если вам нужен свой GUID, то там, соответственно, есть newid() ( https://msdn.microsoft.com/en-us/library/ms190348.aspx).

Если же задача продублировать функцию при, например, миграции, то
а) Можно - это всего навсего Timestamp, упакованный в бинарный формат, + некоторый sequence (если гранулярности TIMESTAMP'а не хватает).
b) Необходимо определить, требуется ли сохранять то свойство, что TIMESTAMP(GENERATE_UNIQUE()) выдаёт время вызова ф-и/генерации значения (в текущей timezone)?
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
$ db2 "with t1(uid) as (
 values GENERATE_UNIQUE(), GENERATE_UNIQUE()
)select TIMESTAMP(uid) as ts, uid, current timestamp as current_timestamp from t1"

TS                         UID                           CURRENT_TIMESTAMP
-------------------------- ----------------------------- --------------------------
2016-11-22-21.46.55.668401 x'20161122214655668401000000' 2016-11-22-13.46.55.654178
2016-11-22-21.46.55.668414 x'20161122214655668414000000' 2016-11-22-13.46.55.654178

  2 record(s) selected.


Некоторая тонкость. В DB2 CURRENT TIMESTAMP определяется на этапе компиляции запроса, в то время как GENERATE_UNIQUE() выполняется для каждого элемента result set'а/изменяемой строки.
При написании своей GENERATE_UNIQUE для MSSQL смотрите, что там будет получаться с производительностью.
...
Рейтинг: 0 / 0
2 сообщений из 2, страница 1 из 1
Форумы / IBM DB2, WebSphere, IMS, U2 [игнор отключен] [закрыт для гостей] / Генерация GENERATE_UNIQUE в ms_sql
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]