Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Oracle Новый топик    Ответить
 Генерация ключа  [new]
Nikolay_Ch
Member

Откуда:
Сообщений: 97
Доброй почти ночи... Заказчик просит сделать ему код сущности в виде цифробуквенной последовательности, которая к тому-же сбрасывалась в начало раз в пять лет.

У меня в табличке два поля - одно - уникальный идентификатор внутренний (он нигде не показывается и является ключевым полем) и второе поле типа Varchar2(4). Вот в это поле и надо генерить идентификатор. Причем он каждый для отдельного пользователя, работающего с системой. Сам идентификатор может содержать символы от 0 до 9 и символы латинского алфавита от А до Z. Есть ли какой-нибудь простой способ генерации такого идентификатора, окромя написания ручного перекодировщика из 10-чной системы счисления в 36-ричную?
5 сен 11, 20:26    [11230982]     Ответить | Цитировать Сообщить модератору
 Re: Генерация ключа  [new]
Nikolay_Ch
Member

Откуда:
Сообщений: 97
Только написал и сразу нашел здесь...
https://www.sql.ru/forum/actualthread.aspx?tid=97501
Получается, что на автомате никак...
5 сен 11, 20:28    [11230993]     Ответить | Цитировать Сообщить модератору
 Re: Генерация ключа  [new]
orawish
Member

Откуда: Гадюкино-2 (City)
Сообщений: 15487
Nikolay_Ch,

stff
только что система не 36, а 26
5 сен 11, 23:24    [11231582]     Ответить | Цитировать Сообщить модератору
 Re: Генерация ключа  [new]
_Nikotin
Member

Откуда: СПб
Сообщений: 2965
dbms_random.string('X', 4)
5 сен 11, 23:38    [11231654]     Ответить | Цитировать Сообщить модератору
 Re: Генерация ключа  [new]
Nikolay_Ch
Member

Откуда:
Сообщений: 97
_Nikotin
dbms_random.string('X', 4)
где уникальность и последовательность генерируемых кодов?
6 сен 11, 12:16    [11233390]     Ответить | Цитировать Сообщить модератору
 Re: Генерация ключа  [new]
Nikolay_Ch
Member

Откуда:
Сообщений: 97
orawish
Nikolay_Ch,
stff
только что система не 36, а 26

Спасибо, но, думаю, что более подходящее решение в использовании функций Any_2_Base10() и Decimal_2_Any_Base() отсюда
6 сен 11, 12:18    [11233414]     Ответить | Цитировать Сообщить модератору
 Re: Генерация ключа  [new]
orawish
Member

Откуда: Гадюкино-2 (City)
Сообщений: 15487
Nikolay_Ch
orawish
Nikolay_Ch,
stff
только что система не 36, а 26

Спасибо, но, думаю, что более подходящее решение в использовании функций Any_2_Base10() и Decimal_2_Any_Base() отсюда

жесть.
если уж решили на pl/sql - так сами и напишИте.
уверяю вас - лучше получится
6 сен 11, 14:13    [11234506]     Ответить | Цитировать Сообщить модератору
Все форумы / Oracle Ответить