|
|
|
Хранение большого кол-ва SQL запросов
|
|||
|---|---|---|---|
|
#18+
При проектировании ИС для предприятия возникла необходимость хранить большое кол-во SQL запросов, есть таблица операторов и есть таблица звонков с множеством параметров(a,б номера, руты , транки ,длительность, код отбоя, ошибка и т.д.), необходимо выбирать звонки для операторов по уникальным для каждого оператора параметрам. Так например для оператора 'Beeline' нужно выбирать только звонки прошедшие через роуты 1 или 2, и с продолжительностью не менее 10 секунд, а для MegaFon все звонки с продолжительностью 1 и более секунд. Хранить такие запросы в таблицах , как это реализовано сейчас, на мой взгляд криво. Может кто-нибудь подскажет более правильный способ. Смотрю в сторону хранимых процедур. Т.е. в таблицу с операторами добавляем поле где храниться поле с названием процедуры дергающей данные из таблицы за заданный период. Может кто-нибудь знает более простой и элегантный способ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.09.2012, 13:02 |
|
||
|
Хранение большого кол-ва SQL запросов
|
|||
|---|---|---|---|
|
#18+
NAFIGATOR2Хранить такие запросы в таблицах , как это реализовано сейчас, на мой взгляд криво. Обоснуй. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.09.2012, 13:31 |
|
||
|
Хранение большого кол-ва SQL запросов
|
|||
|---|---|---|---|
|
#18+
NAFIGATOR2, А что сейчас происходит, когда добавлется новый оператор/изменяется алгоритм для старого? Пользователи сообщают программисту, и тот пишет новый запрос? Или пользователи сами его пишут? В первом случае хранить имена хранимых процедур и вызывать их не очень-то нужны, можно обойтись IF-ами в одной процедуре (хотя можно и хранить) Во втором с процедурами будет сложность - одно дело заставить пользователя писать несложный запрос (а в идеале - только where к нему), а другое - полноценную процедуру, и давать ему права Create procedure. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.09.2012, 14:19 |
|
||
|
Хранение большого кол-ва SQL запросов
|
|||
|---|---|---|---|
|
#18+
> Может кто-нибудь знает более простой и элегантный способ? Хранимые процедуры. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.09.2012, 14:37 |
|
||
|
Хранение большого кол-ва SQL запросов
|
|||
|---|---|---|---|
|
#18+
NAFIGATOR2, дык вьюхи еще. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.09.2012, 21:24 |
|
||
|
Хранение большого кол-ва SQL запросов
|
|||
|---|---|---|---|
|
#18+
Кот МатроскинNAFIGATOR2, А что сейчас происходит, когда добавлется новый оператор/изменяется алгоритм для старого? Пользователи сообщают программисту, и тот пишет новый запрос? Или пользователи сами его пишут? В первом случае хранить имена хранимых процедур и вызывать их не очень-то нужны, можно обойтись IF-ами в одной процедуре (хотя можно и хранить) Во втором с процедурами будет сложность - одно дело заставить пользователя писать несложный запрос (а в идеале - только where к нему), а другое - полноценную процедуру, и давать ему права Create procedure. И сам select тоже приходиться писать, потому как все b номера необходимо приводить к виду кодов направлений в таблице тарифов, а у разных операторов в таблице звонков номера записываются по разному, у одних "00" перед номером, у других "+", у третьих все звонки идут только на местные номера и там кодов вообще нет, приходиться смотреть на кол-во цифр в номере. А что касается IF-ов, то операторов несколько десятков, лучше буду хранить в отдельном поле. Всем кто откликнулся большое спасибо, понял что универсального способа нет, просто думал что возможно есть какой-нибудь паттерн для таких вот случаев, хотелось услышать чужое мнение. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.09.2012, 06:20 |
|
||
|
Хранение большого кол-ва SQL запросов
|
|||
|---|---|---|---|
|
#18+
NAFIGATOR2, паттерн называется EAV и примерно так и выглядит (как Вы делаете), только в Вашем случае хранятся не свойства, а методы обработки объектов. Тут - весьма щекотливая тема, не советую удаляться "вглыбь". Поищите поиском. Среди кучи хлама, срача и флуда, есть отдельные зерна умных мыслей. Потому как все над ним "бьются", но у каждого выходит "свой каменный цветок"... или не выходит... запор, то бишь. Отсюда и срач. ;) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.09.2012, 06:41 |
|
||
|
|

start [/forum/topic.php?fid=32&msg=37972947&tid=1541533]: |
0ms |
get settings: |
4ms |
get forum list: |
10ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
139ms |
get topic data: |
6ms |
get forum data: |
5ms |
get page messages: |
42ms |
get tp. blocked users: |
1ms |
| others: | 200ms |
| total: | 411ms |

| 0 / 0 |
