|
Нумерация объектов
|
|||
---|---|---|---|
#18+
Есть обеъкты различных типов. Типы могут добавляться динамически. Как нумеровавать объекты? Пока вижу три варианта: 1. Сквозная секвенция по всем типам.(думаю что плохо) 2. Динамически создавать секвенцию по добавляемому типу(скорее всего, но чемто не нравится, динамическим ddl?) 3. Смотреть максимальный номер существующий номер по типу и +1.(плохо, возможны дубликаты) Может есть еще что? Как посоветуете? ... |
|||
:
Нравится:
Не нравится:
|
|||
30.08.2006, 13:42 |
|
Нумерация объектов
|
|||
---|---|---|---|
#18+
опять 25... чем сквозная то не устраивает? ... |
|||
:
Нравится:
Не нравится:
|
|||
30.08.2006, 13:44 |
|
Нумерация объектов
|
|||
---|---|---|---|
#18+
Неясно назначение нумерации, соответственно трудно давать совет. Если просто первичный ключ - п.1 нормально ... |
|||
:
Нравится:
Не нравится:
|
|||
30.08.2006, 13:45 |
|
Нумерация объектов
|
|||
---|---|---|---|
#18+
Ненаглядностью, какой номер в данном типе ... |
|||
:
Нравится:
Не нравится:
|
|||
30.08.2006, 13:45 |
|
Нумерация объектов
|
|||
---|---|---|---|
#18+
tru55Неясно назначение нумерации, соответственно трудно давать совет. Если просто первичный ключ - п.1 нормально Например внутреняя нумерация документов предприятия ... |
|||
:
Нравится:
Не нравится:
|
|||
30.08.2006, 13:47 |
|
Нумерация объектов
|
|||
---|---|---|---|
#18+
12321Ненаглядностью, какой номер в данном типе А зачем? и соглашусь с tru55, неясно для чего нумерация. но как показывает практика, знать "номер в данном типе" еще никому никогде не понадобилось. т.к. физического смысла он не имеет. И ситуация - удалили тип, появилась "дырка", перенумеровывать будете? скорее всего нет, а "наглядность" уже не соответствует действительности. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.08.2006, 13:48 |
|
Нумерация объектов
|
|||
---|---|---|---|
#18+
документооборот tru55Неясно назначение нумерации, соответственно трудно давать совет. Если просто первичный ключ - п.1 нормально Например внутреняя нумерация документов предприятия Внутрений номер относительно базы или этот номер видит пользователь? ... |
|||
:
Нравится:
Не нравится:
|
|||
30.08.2006, 13:50 |
|
Нумерация объектов
|
|||
---|---|---|---|
#18+
А чем плохо создавать динамически секывенции? ... |
|||
:
Нравится:
Не нравится:
|
|||
30.08.2006, 13:51 |
|
Нумерация объектов
|
|||
---|---|---|---|
#18+
документооборотА чем плохо создавать динамически секывенции? вообще что либо создавать динамически - это плохо. 1. проблема названий. 2. проблемы копирования/переноса на другую базу 3. порблемы прав доступа 4. да мало ли... ... |
|||
:
Нравится:
Не нравится:
|
|||
30.08.2006, 13:54 |
|
Нумерация объектов
|
|||
---|---|---|---|
#18+
tru55 документооборот tru55Неясно назначение нумерации, соответственно трудно давать совет. Если просто первичный ключ - п.1 нормально Например внутреняя нумерация документов предприятия Внутрений номер относительно базы или этот номер видит пользователь? Видит пользователь: приход1 приход2 приход3 этетичнее Чем приход1 приход8 приход17 Я вот о чем, может есть какойто другой подход? ... |
|||
:
Нравится:
Не нравится:
|
|||
30.08.2006, 13:56 |
|
Нумерация объектов
|
|||
---|---|---|---|
#18+
"приход" порадовал :) ну в таком случае общий сиквенс возможно и не пойдет. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.08.2006, 14:01 |
|
Нумерация объектов
|
|||
---|---|---|---|
#18+
Mikst документооборотА чем плохо создавать динамически секывенции? вообще что либо создавать динамически - это плохо. 1. проблема названий. 2. проблемы копирования/переноса на другую базу 3. порблемы прав доступа 4. да мало ли...имхо - не все так однозначно.. названия могут быть алгоритмически предопределены, права и перенос - решаемо. Ну чё иначе делать, если логика ОАО БЛА_БЛА_БЛА предполагает нумерацию документов с единицы-внутри_типа да еще напр. каждый_год_заново с 1? Тут дешевле раз сделать процедуру, которая нужный сиквенс дернет (а если его нетути, то, кстати и создаст :) ... |
|||
:
Нравится:
Не нравится:
|
|||
30.08.2006, 14:03 |
|
Нумерация объектов
|
|||
---|---|---|---|
#18+
Mikst"приход" порадовал :) ну в таком случае общий сиквенс возможно и не пойдет. Опять таки, в случае с дырками, это имеет смысл как удаленное значение. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.08.2006, 14:04 |
|
Нумерация объектов
|
|||
---|---|---|---|
#18+
1. использование sequence не гарантирует отсутствие пропусков в нумерации, о чем уже неоднократно говорилось 2. смотря для чего показывать пользователю этот номер. Если просто для красоты - сойдет и ROWNUM 3. если пользователи используют эти номера для работы, то, как показывает практика, они достаточно быстро запоминают их (если, конечно, их не очень много); при этом неважно, идут они по порядку или нет ... |
|||
:
Нравится:
Не нравится:
|
|||
30.08.2006, 14:04 |
|
Нумерация объектов
|
|||
---|---|---|---|
#18+
автор3. Смотреть максимальный номер существующий номер по типу и +1.(плохо, возможны дубликаты) Дубликатов можно избежать, если эти номера хранить в отдельной таблице. Последующий номер выдавать с помощью функции в которой соответсвующую запись блокировать select for update. Кстати, если создавать свою функцию генерации омеров, то можно для разных типов описать свою цикличность нумерации, отсутвие - наличие дырок и т.п. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.08.2006, 17:07 |
|
Нумерация объектов
|
|||
---|---|---|---|
#18+
Maxifly автор3. Смотреть максимальный номер существующий номер по типу и +1.(плохо, возможны дубликаты) Дубликатов можно избежать, если эти номера хранить в отдельной таблице. Последующий номер выдавать с помощью функции в которой соответсвующую запись блокировать select for update. Кстати, если создавать свою функцию генерации омеров, то можно для разных типов описать свою цикличность нумерации, отсутвие - наличие дырок и т.п. И чем это (кроме отсутствия - наличия дырок) отличается от стандартного sequence ? ... |
|||
:
Нравится:
Не нравится:
|
|||
30.08.2006, 17:09 |
|
Нумерация объектов
|
|||
---|---|---|---|
#18+
tru55 И чем это (кроме отсутствия - наличия дырок) отличается от стандартного sequence ? 1. Нестандартные варианты цикличности. Например - ежедневно. Ежечасно. 2. Нестандартные правила. Например номера кратые 1000 использовать нельзя. (это пример из жизни а не надуманный) 3. Нет необходимости динамически плодить sequence 4. Возможно построить последовательность типа AAA AAB AAC или АА1 AA2 ... AA9 AB1 PS: Я не говорю, что этот способ лучший. Просто в некоторых случаях он подходит. Например, для генерации суррогатных ключей его применять - глупо, а для генерации внешних номеров документов - вполне приемлемо. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.08.2006, 17:17 |
|
Нумерация объектов
|
|||
---|---|---|---|
#18+
Maxifly автор3. Смотреть максимальный номер существующий номер по типу и +1.(плохо, возможны дубликаты) Дубликатов можно избежать, если эти номера хранить в отдельной таблице. Последующий номер выдавать с помощью функции в которой соответсвующую запись блокировать select for update. Кстати, если создавать свою функцию генерации омеров, то можно для разных типов описать свою цикличность нумерации, отсутвие - наличие дырок и т.п. Скорее всего на это то что нужно, Код: plaintext 1. 2. 3.
хотя без дырки будут ... |
|||
:
Нравится:
Не нравится:
|
|||
31.08.2006, 06:35 |
|
|
start [/forum/topic.php?fid=52&gotonew=1&tid=1957587]: |
0ms |
get settings: |
10ms |
get forum list: |
14ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
28ms |
get topic data: |
11ms |
get first new msg: |
7ms |
get forum data: |
3ms |
get page messages: |
60ms |
get tp. blocked users: |
2ms |
others: | 251ms |
total: | 392ms |
0 / 0 |