|
|
|
Как прохэшировать значение по всем полям
|
|||
|---|---|---|---|
|
#18+
Всем привет. Возникла такая мини проблемка, нужно получить хэш-значение по всем полям для каждой строки в селекте. Делалось для того, чтобы узнать, изменилось что-либо в этих значениях или нет. Самое легкое что нашел, это прохэшировать все значения (по одному) и сложить в сумму. Делалось примерно так: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. Сорри, если не так объяснил ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.09.2008, 18:29 |
|
||
|
Как прохэшировать значение по всем полям
|
|||
|---|---|---|---|
|
#18+
Максим Улитинлибо что-то, что позволяет узнать, когда данная строчка была обновлена.Можно, например, записывать дату обновления сроки в триггере в отдельное поле и сравнивать с предыдущей. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.09.2008, 18:32 |
|
||
|
Как прохэшировать значение по всем полям
|
|||
|---|---|---|---|
|
#18+
... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.09.2008, 18:38 |
|
||
|
Как прохэшировать значение по всем полям
|
|||
|---|---|---|---|
|
#18+
Схема чужая и прав на нее хватает только на селект. Сейчас стало быть работает так (ногами пинать не очень сильно): Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.09.2008, 18:39 |
|
||
|
Как прохэшировать значение по всем полям
|
|||
|---|---|---|---|
|
#18+
В добавление - можно смотреть на SCN читать здесь ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.09.2008, 18:39 |
|
||
|
Как прохэшировать значение по всем полям
|
|||
|---|---|---|---|
|
#18+
Anton DemidovПосмотрите на OWA_OPT_LOCK.CHECKSUM - может подойдёт. Код: plaintext 1. НУ если судить по описанию, то как раз то, что нужно ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.09.2008, 18:40 |
|
||
|
Как прохэшировать значение по всем полям
|
|||
|---|---|---|---|
|
#18+
BelyВ добавление - можно смотреть на SCN читать здесь Насколько я помню, что SCN_TO_TIMESTAMP работает только на 10, а у меня 9.2.0.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.09.2008, 18:41 |
|
||
|
Как прохэшировать значение по всем полям
|
|||
|---|---|---|---|
|
#18+
Anton DemidovПосмотрите на OWA_OPT_LOCK.CHECKSUM - может подойдёт. Код: plaintext 1. Все таки не подошло, Код: plaintext ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.09.2008, 18:48 |
|
||
|
Как прохэшировать значение по всем полям
|
|||
|---|---|---|---|
|
#18+
Максим Улитин Anton DemidovПосмотрите на OWA_OPT_LOCK.CHECKSUM - может подойдёт. Код: plaintext 1. Все таки не подошло, Код: plaintext Извини, пропустил Максим Улитинхэш-значение по всем полям для каждой строки в селекте Вам бы ORA_HASH использовать, но он в 9.2 отсутсвует. Так что конкатенируйте строки и получайте их хеш по-старому Код: plaintext 1. 2. 3. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.09.2008, 22:26 |
|
||
|
Как прохэшировать значение по всем полям
|
|||
|---|---|---|---|
|
#18+
Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.09.2008, 02:37 |
|
||
|
Как прохэшировать значение по всем полям
|
|||
|---|---|---|---|
|
#18+
НУ по поводу автономной транзакции я еще вчера по попробовал написать, но к сожалению такой вариант хоть и рабочий, но не подходит. Так как все тормозит безбожно, 10К записей за 15 секунд - это ужас какой. Код: plaintext ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.09.2008, 15:23 |
|
||
|
Как прохэшировать значение по всем полям
|
|||
|---|---|---|---|
|
#18+
Задача такая же. Случаем ничего новее, шустрее чем DBMS_UTILITY.get_hash_value не появилось в PL/SQL (ORA_HASH только для SQL как понял). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.11.2016, 12:11 |
|
||
|
Как прохэшировать значение по всем полям
|
|||
|---|---|---|---|
|
#18+
AvotgeСлучаем ничего новееdbms_obfuscation_toolkit.md5, DBMS_CRYPTO.Hash AvotgeшустрееМеряй. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.11.2016, 14:05 |
|
||
|
Как прохэшировать значение по всем полям
|
|||
|---|---|---|---|
|
#18+
AvotgeЗадача такая же. Случаем ничего новее, шустрее чем DBMS_UTILITY.get_hash_value не появилось в PL/SQL (ORA_HASH только для SQL как понял). Шустрее чем last_change_date все равно не будет, да и разница если джоинить по 10 полям и одному, ну не очень то велика. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.11.2016, 16:12 |
|
||
|
|

start [/forum/topic.php?fid=52&fpage=190&tid=1887019]: |
0ms |
get settings: |
6ms |
get forum list: |
14ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
292ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
54ms |
get tp. blocked users: |
1ms |
| others: | 220ms |
| total: | 605ms |

| 0 / 0 |
