|
Исключения vs коды возвратов
|
|||
---|---|---|---|
#18+
ВМоисеевПопытка решения в лоб - ищется группа извещений, время которых меньше заданного, а группе ищутся с максимальным временем - оказалась не состоятельной. Задача перешла из режима отчетного документа в интерактивный режим. А здесь присутствует фактор времени. Десятки минут не катят. Пока ничего лучшего не придумал, кроме как строить в дополнительной таблицы временные срезы и извещения выбирать не из всего множества, а из диапазона между срезом и заданной датой. Я буду крайне благодарен за любую положительную идею и конструктивную критику. Задача уже немного надоела, но надо сделать. А в чём проблема-то? Хранимка медленно отрабатывает? Показывайте структуру таблиц и толком объясните задачу. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.07.2018, 09:10 |
|
Исключения vs коды возвратов
|
|||
---|---|---|---|
#18+
>skyANA, сегодня, 09:01 http://www.sql.ru/forum/actualutils.aspx?action=gotomsg&tid=1297921&msg=21583428] [21583428] >Иначе задам вопрос: разве может случиться так, что lst_Entity будет null в момент вызова метода Add? Да. У меня хранимые процедуры, реализующие INSERT, UPDATE, DELETE возвращают выборку из одной строки - список не нужен. Пример: Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23.
lst_Entity может принимать значение null, ссылки на пустой список, ссылки на заполненный список. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.07.2018, 10:04 |
|
Исключения vs коды возвратов
|
|||
---|---|---|---|
#18+
>skyANA, сегодня, 09:10 http://www.sql.ru/forum/actualutils.aspx?action=gotomsg&tid=1297921&msg=21583444][21583444] >А в чём проблема-то? Хранимка медленно отрабатывает? Да. Если интересно, то см. здесь , здесь и здесь . Структуру всех таблиц для построения нужной мне выборки по извещениям я не знаю. Контора сопровождает инфосистему, сделанную другими. Код ХР подсмотрели у тех, кто до нас. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.07.2018, 10:18 |
|
Исключения vs коды возвратов
|
|||
---|---|---|---|
#18+
ВМоисеев>skyANA, сегодня, 09:01 http://www.sql.ru/forum/actualutils.aspx?action=gotomsg&tid=1297921&msg=21583428] [21583428] >Иначе задам вопрос: разве может случиться так, что lst_Entity будет null в момент вызова метода Add? Да. У меня хранимые процедуры, реализующие INSERT, UPDATE, DELETE возвращают выборку из одной строки - список не нужен. Пример: Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23.
lst_Entity может принимать значение null, ссылки на пустой список, ссылки на заполненный список. Мда, как же всё у Вас прибито гвоздями... ... |
|||
:
Нравится:
Не нравится:
|
|||
19.07.2018, 10:41 |
|
Исключения vs коды возвратов
|
|||
---|---|---|---|
#18+
ВМоисеев>skyANA, сегодня, 09:10 http://www.sql.ru/forum/actualutils.aspx?action=gotomsg&tid=1297921&msg=21583444][21583444] >А в чём проблема-то? Хранимка медленно отрабатывает? Да. Если интересно, то см. здесь , здесь и здесь . Структуру всех таблиц для построения нужной мне выборки по извещениям я не знаю. Контора сопровождает инфосистему, сделанную другими. Код ХР подсмотрели у тех, кто до нас. Если Вы за два года ни структуры, ни плана, ни индексов не узнали, то боюсь Вам не помочь. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.07.2018, 10:49 |
|
Исключения vs коды возвратов
|
|||
---|---|---|---|
#18+
ВМоисеев, всё сидите на Oracle 8i? изменения в БД идут исключительно через хранимки? свои объекты в БД создавать есть возможность? изменять хранимые процедуры? если да, то смотрите в сторону денормализации... летать будет всё со страшной силой ... |
|||
:
Нравится:
Не нравится:
|
|||
19.07.2018, 11:04 |
|
Исключения vs коды возвратов
|
|||
---|---|---|---|
#18+
>skyANA, сегодня, >10:41 http://www.sql.ru/forum/actualutils.aspx?action=gotomsg&tid=1297921&msg=21584048][21584048] >Мда, как же всё у Вас прибито гвоздями… Интересно, видим одно и тоже - выводы делаем диаметрально противоположные. Я стремился создать одну гибкую конструкцию обработки выборки из ХП, Вы же на каждый чих создаёте класс, что чуждо для меня. Например, как формирую извещения для крайнего изменения состояния объектов: Код: c# 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. 34. 35. 36. 37. 38. 39. 40. 41.
... |
|||
:
Нравится:
Не нравится:
|
|||
19.07.2018, 11:40 |
|
Исключения vs коды возвратов
|
|||
---|---|---|---|
#18+
skyANA, этот rowEntity нафиг никому не нужен вовсе ... |
|||
:
Нравится:
Не нравится:
|
|||
19.07.2018, 12:08 |
|
Исключения vs коды возвратов
|
|||
---|---|---|---|
#18+
ВМоисеевВы же на каждый чих создаёте класс, что чуждо для меня Что-то вас не парит использования классов, созданных «на каждый чих», из библиотек .NET. Вы просто не хотите ничему учиться, уже скоро год пройдёт, как вы копируете одни и те же тексты с плохим кодом, и все советы и рекомендации прошли мимо. Просто тратите чужое время. Зачем? ... |
|||
:
Нравится:
Не нравится:
|
|||
19.07.2018, 12:09 |
|
Исключения vs коды возвратов
|
|||
---|---|---|---|
#18+
hVosttуже скоро год пройдёт, как вы копируете одни и те же тексты с плохим кодом, и все советы и рекомендации прошли мимо. Просто тратите чужое время. Зачем? не спрашивай. Бесполезно. Я не понимаю зачем эту тему опять подняли. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.07.2018, 12:29 |
|
Исключения vs коды возвратов
|
|||
---|---|---|---|
#18+
ВМоисеев, и в чём же гибкость? У Вас интерфейс гвоздями прибит к базе Oracle и логика с ними перемешана. Понадобится что-то качественно изменить и фигушки. Скажете, что это не предполагалось и надо всё переписывать. Тупо вызвать хранимку без параметров и возвращающую NUMBER вместо курсора Ваша конструкция уже не позволяет. А гибкость - это быстрая и лёгкая реакция на новые требования. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.07.2018, 12:35 |
|
Исключения vs коды возвратов
|
|||
---|---|---|---|
#18+
ViPRosskyANA, этот rowEntity нафиг никому не нужен вовсеДа там весь проект на фиг никому не нужен. Было бы иначе, то давно бы всплыли очевидные косяки архитектуры. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.07.2018, 12:38 |
|
Исключения vs коды возвратов
|
|||
---|---|---|---|
#18+
>skyANA, сегодня, 12:35 http://www.sql.ru/forum/actualutils.aspx?action=gotomsg&tid=1297921&msg=21584720][21584720] >...У Вас интерфейс гвоздями прибит к базе Oracle и логика с ними перемешана… Вы не правы: Код: c# 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.
... |
|||
:
Нравится:
Не нравится:
|
|||
19.07.2018, 15:17 |
|
Исключения vs коды возвратов
|
|||
---|---|---|---|
#18+
ВМоисеев, и что Вы показали? Это то же приложение, но работающее вдруг с SQL Server? Нет. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.07.2018, 15:26 |
|
Исключения vs коды возвратов
|
|||
---|---|---|---|
#18+
ВМоисеев, уберите Код: c# 1.
уберите Код: c# 1.
будет интерфейс работать? нет... прибит гвоздями а гибкость - это кода уровню представления не важно то, из какого хранилища прилетают данные ... |
|||
:
Нравится:
Не нравится:
|
|||
19.07.2018, 15:29 |
|
Исключения vs коды возвратов
|
|||
---|---|---|---|
#18+
skyANAа гибкость - это кода уровню представления не важно то, из какого хранилища прилетают данные Суть ещё только в том, чтобы иметь возможность заменить источник данных. Архитектура, которая это позволяет, может решать и другой спектр задач, кеширование, профилирование, вешать аспекты, аудит и многое другое. Естественно, судя по приведённым кускам кода, об этом даже нельзя и мечтать. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.07.2018, 15:45 |
|
Исключения vs коды возвратов
|
|||
---|---|---|---|
#18+
hVosttskyANAа гибкость - это кода уровню представления не важно то, из какого хранилища прилетают данные Суть ещё только в том, чтобы иметь возможность заменить источник данных.В двухзвенке смена БД обычно приводит к переписыванию всей прикладной логики. Поэтому о смене БД речи не идёт. hVosttАрхитектура, которая это позволяет, может решать и другой спектр задач, кеширование, профилирование, вешать аспекты, аудит и многое другое. Естественно, судя по приведённым кускам кода, об этом даже нельзя и мечтать.В двухзвенке это решается средствами СУБД - profiler, triggers и т. п. Мне тоже не нравятся показанные примеры кода. Но они решают поставленную задачу, никакие требования не нарушены, значит претензий быть не может. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.07.2018, 05:28 |
|
Исключения vs коды возвратов
|
|||
---|---|---|---|
#18+
skyANAесли да, то смотрите в сторону денормализации... летать будет всё со страшной силойНо и проблем с обеспечением целостности данных добавится... ... |
|||
:
Нравится:
Не нравится:
|
|||
20.07.2018, 05:33 |
|
Исключения vs коды возвратов
|
|||
---|---|---|---|
#18+
Алексей КВ двухзвенке смена БД обычно приводит к переписыванию всей прикладной логики. Поэтому о смене БД речи не идёт. С чего бы это? Делается отдельный класс для взаимодействия с бд, суть которого - исключительно чтение/запись данных, и никакой прикладной логики внутри. Из класса экстрактится интерфейс, класс по этому интерфейсу инжектится в классы, реализующие прикладную логику. При необходимости смены БД пишется новый класс для новой БД с тем же интерфейсом, инжектится вместо старого. Всё это прекрасно работает на двухзвенке. Ну, разумеется, если программа написана так, что данные из БД сразу пихаются в гуй, и в нем же и обрабатываются, то тогда да, уже мало что поможет. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.07.2018, 06:23 |
|
Исключения vs коды возвратов
|
|||
---|---|---|---|
#18+
Сон Веры ПавловныАлексей КВ двухзвенке смена БД обычно приводит к переписыванию всей прикладной логики. Поэтому о смене БД речи не идёт. С чего бы это? Делается отдельный класс для взаимодействия с бд, суть которого - исключительно чтение/запись данных, и никакой прикладной логики внутри. Из класса экстрактится интерфейс, класс по этому интерфейсу инжектится в классы, реализующие прикладную логику. При необходимости смены БД пишется новый класс для новой БД с тем же интерфейсом, инжектится вместо старого. Всё это прекрасно работает на двухзвенке. Ну, разумеется, если программа написана так, что данные из БД сразу пихаются в гуй, и в нем же и обрабатываются, то тогда да, уже мало что поможет.Да, обращение к БД в коде клиента лучше вынести в репозитарий, кто ж спорит. Но прикладную логику разумно располагать на сервере. В двухзвенке для этого используются средства СУБД - stored proc, view и т. п. А в этом случае хоть как ты организуй код на клиенте, серверную часть при смене СУБД придётся переделывать. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.07.2018, 06:32 |
|
Исключения vs коды возвратов
|
|||
---|---|---|---|
#18+
Алексей КВ двухзвенке для этого используются средства СУБД - stored proc, view и т. п. А в этом случае хоть как ты организуй код на клиенте, серверную часть при смене СУБД придётся переделывать. А такое и в трехзвенке бывает, когда критичные к быстродействию куски прикладной логики выносятся в БД. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.07.2018, 06:56 |
|
Исключения vs коды возвратов
|
|||
---|---|---|---|
#18+
Сон Веры ПавловныАлексей КВ двухзвенке для этого используются средства СУБД - stored proc, view и т. п. А в этом случае хоть как ты организуй код на клиенте, серверную часть при смене СУБД придётся переделывать. А такое и в трехзвенке бывает, когда критичные к быстродействию куски прикладной логики выносятся в БД.Да, но сейчас речь не об этом. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.07.2018, 09:44 |
|
Исключения vs коды возвратов
|
|||
---|---|---|---|
#18+
Алексей КВ двухзвенке смена БД обычно приводит к переписыванию всей прикладной логики. Поэтому о смене БД речи не идёт. Двухзвенка это прошлый век. Алексей КВ двухзвенке это решается средствами СУБД - profiler, triggers и т. п. Т.е. костыли и приплясывания с бубном. Да и пофигу, прошлый век и совершенно не интересно. Алексей КМне тоже не нравятся показанные примеры кода. Но они решают поставленную задачу, никакие требования не нарушены, значит претензий быть не может. Ещё неизвестно решают ли. Или так хочет думать автор. Некоторые лечатся уринотерапией и искренне верят, что помогает. Тогда вроде как можно сказать тоже самое, что сказал ты. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.07.2018, 10:43 |
|
Исключения vs коды возвратов
|
|||
---|---|---|---|
#18+
hVosttАлексей КВ двухзвенке смена БД обычно приводит к переписыванию всей прикладной логики. Поэтому о смене БД речи не идёт. Двухзвенка это прошлый век.И что? Предлагаешь все существующие проекты переписать на трёхзвенку? ... |
|||
:
Нравится:
Не нравится:
|
|||
20.07.2018, 10:58 |
|
Исключения vs коды возвратов
|
|||
---|---|---|---|
#18+
hVostt Ещё неизвестно решают ли. Или так хочет думать автор. Некоторые лечатся уринотерапией и искренне верят, что помогает. Тогда вроде как можно сказать тоже самое, что сказал ты.Тебе нужны копии актов сдачи проекта в промышленную эксплуатацию? ... |
|||
:
Нравится:
Не нравится:
|
|||
20.07.2018, 11:05 |
|
|
start [/forum/topic.php?fid=20&msg=39676579&tid=1399295]: |
0ms |
get settings: |
7ms |
get forum list: |
10ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
148ms |
get topic data: |
6ms |
get forum data: |
2ms |
get page messages: |
50ms |
get tp. blocked users: |
1ms |
others: | 349ms |
total: | 579ms |
0 / 0 |