|
|
|
как правильно выбирать множество записей с созранением результата обрабтки?
|
|||
|---|---|---|---|
|
#18+
Какое решение будет наиболее правильным? ситуация: есть сервис, читающий множество команд в формате xml посредством ХП. При чтении им выставляется статус "В обработке". Далее этот сервис пытается обработать команды. Результат: успешно, неверная команда, непредусмотренная ошибка. Обработка результата осуществляется следующим образом: - непредусмотренная ошибка - вернуть всем командам статус "Активно", - неверная команда - статус "Ошибка", - успешная - статус "В обработке" не менять 1 вариант решения - ввести в таблицу Command доп поле get_session и писать туда GUID при выборке нового множества команд. Тогда при непредусмотренной ошибке можно легко сделать Код: plaintext А при ошибке самого xml дергать вторую процедуру, но уже с ID команды: Код: plaintext Чем не нравится - поле get_session логически не связано с таблицей Command. Оно сервисное и нужно для функционирования некоего внешнего сервиса. К тому же для сохранения результатов используются несколько ХП, каждое их которых по своему доступается к данным. Справедливости ради отмечу, что вероятность вызова таких процедур крайне мала. 2 вариант решения - сервис ведет у себя xml-документ с id командами и статусом их исполнения типа этого: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. а по окончании работы вызывается сохраняющая ХП: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. Смущает использование xml - кажется оно будет медленнее работать. И необходимость ведения дополнительного "лога" на сервисе. Зато доступ к данным будет единообразный вот структура таблицы на всякий случай Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. Вот выборка команд из таблицы: Код: 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. 28. 29. 30. 31. 32. 33. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.10.2008, 17:54 |
|
||
|
как правильно выбирать множество записей с созранением результата обрабтки?
|
|||
|---|---|---|---|
|
#18+
Наверное, слишком много букв. Если коротко: что правильнее - получить набор записей и для каждой из них вызывать хранимку для сохранения результата обработки или лучше после обработки этого набора сформировать xml с результатами и однократным вызовом процедуры зафиксировать их? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.10.2008, 10:25 |
|
||
|
|

start [/forum/topic.php?fid=32&fpage=98&tid=1543635]: |
0ms |
get settings: |
9ms |
get forum list: |
17ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
35ms |
get topic data: |
16ms |
get forum data: |
2ms |
get page messages: |
60ms |
get tp. blocked users: |
1ms |
| others: | 332ms |
| total: | 476ms |

| 0 / 0 |
