|
|
|
Проектирование БД (складирование запросов)
|
|||
|---|---|---|---|
|
#18+
Добрый день. Накопилось множество sql запросов, расположенных в txt файлах. Хотим приступить к их автоматизации хранения (выполнения). Хотим данную тему размещать на web морде, чтобы можно было редактировать, запускать на выполнение, объединять с результатами разных SQL запросов через связанные поля. БД Oracle. Есть у кого-либо опыт подобного или быть может уже существуют готовые решения? По сути это что-то вроде wiki, с более продвинутым функционалом. Тема для меня новая, не хочется тратить время на изучение не эффективных подходов. Может уже кто-то пуд соли на этом съел и есть рекомендации быстрых и эффективных решений, которые в перспективе не поставят разработку в ступор, какой-либо неучтенной деталью. Интересуют структура БД, сколько таблиц, как что связано, какие параметры стоит завести на будущее. Ссылки на источники. Мог бы поискать в яндексе, но мне кажется 10-летний опыт знает лучше яндекса. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.07.2012, 10:42 |
|
||
|
Проектирование БД (складирование запросов)
|
|||
|---|---|---|---|
|
#18+
Что, БД не поддерживает Stored Procedure? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.07.2012, 11:13 |
|
||
|
Проектирование БД (складирование запросов)
|
|||
|---|---|---|---|
|
#18+
А принцип можно в двух строках описать? Stored P - в моем понимании точка входа. А что дальше делать? Вот у меня есть навыки sql запросов без админства, чуть php. Я и спрашиваю, какие мне инструменты стоит изучить для реализации данной задачи и куда двигать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.07.2012, 11:58 |
|
||
|
Проектирование БД (складирование запросов)
|
|||
|---|---|---|---|
|
#18+
Freeze729, Сам по себе SQL-запрос мало интересен. Как правило, он часть какой-то функциональности, например: отчёт, OLAP-выход, действие над базой и т.д. Помимо этого, в правильной ИС действует принцип: "Что положено Юпитеру, то не положено быку". В третьих, в нормальной ИС поддерживается временной континиум, в нашем случае это означает версионность. Отсюда уже можно накидать ~ схему: Пользователи (M:M) Роли (M:M) Отчёты в BLOB, SQL в BLOB, версия Иными словами, пользователь заходит в систему, система определяет назначенные пользователю роли и на основе списка ролей предьявляет пользователю список доступных (разрешенных) отчётов. Пользователь выбирает по мнемоническому названию требуемый отчёт, система из BLOB'а подтягивает SQL-текст, засовывает его в "волшебный исполнитель заклинаний" (ВИЗ), добавляет туда-же волшебных параметров по-ситуации (напр. интервал дат, контрагент и пр.), затем ВИЗ запускается на исполнение и если всё удачно, то выдаёт зелёный тягучий результат в генератор отчётов, где уже находится шаблон отчёта (тоже загруженный из BLOB) После этого пользователь получает готовый отчёт пред ясны очи. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.07.2012, 12:33 |
|
||
|
Проектирование БД (складирование запросов)
|
|||
|---|---|---|---|
|
#18+
Freeze729, Stored procedure - это, грубо говоря, хранящийся в базе данных именованный скрипт. Одни SP могут вызывать другие, есть механизм передачи параметров, и т.д. То есть практически вся требуемая Вам функциональность уже реализована. Управляется оно, правда, обычно не из WEB-морд, а из специальных утилит, но 1. При желании сделать WEB-морду можно 2. Я бы в этом вопросе с WEB-мордами вообще не очень связывался - безопасность, удоство использования и т.п. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.07.2012, 12:45 |
|
||
|
Проектирование БД (складирование запросов)
|
|||
|---|---|---|---|
|
#18+
авторНакопилось множество sql запросов, расположенных в txt файлах. Хотим приступить к их автоматизации хранения (выполнения). Не вполне понимаю что же это за ситуация такая ? Почему запросы голые, без клиентской части, которая выспрашивает все у пользователя и сама дергает с сервера уже нужный запрос ? Какая-то универальная система ? Пойди туда, не знаю куда, принеси то, не знаю что ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.07.2012, 13:00 |
|
||
|
Проектирование БД (складирование запросов)
|
|||
|---|---|---|---|
|
#18+
Спасибо за описание, ВИЗ - очень интересно) Уже то что описали, навело на мысли, спасибо. Любитель (14820 msg=Фанат уже). Делалось изначально все из Ж. Цель: Систематизация отчетности. Раньше ее рукописными скриптами в VBA делали, сейчас хотим перевести на web. Плодить снова помойку, копируя запросы из одного отчета в другой - не хочется. "Почему запросы голые, без клиентской части, которая выспрашивает все у пользователя и сама дергает с сервера уже нужный запрос ?" - и это в том числе. Получается, система будет работать над производством массовой отчетности, так и с индивидуальными запросами пользователя, который хочет посмотреть отдельную характеристику. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.07.2012, 13:36 |
|
||
|
Проектирование БД (складирование запросов)
|
|||
|---|---|---|---|
|
#18+
Freeze729Добрый день. Накопилось множество sql запросов, расположенных в txt файлах. Хотим приступить к их автоматизации хранения (выполнения). Хотим данную тему размещать на web морде, чтобы можно было редактировать, запускать на выполнение, объединять с результатами разных SQL запросов через связанные поля. БД Oracle. Есть у кого-либо опыт подобного или быть может уже существуют готовые решения? По сути это что-то вроде wiki, с более продвинутым функционалом. Тема для меня новая, не хочется тратить время на изучение не эффективных подходов. Может уже кто-то пуд соли на этом съел и есть рекомендации быстрых и эффективных решений, которые в перспективе не поставят разработку в ступор, какой-либо неучтенной деталью. Интересуют структура БД, сколько таблиц, как что связано, какие параметры стоит завести на будущее. Ссылки на источники. Мог бы поискать в яндексе, но мне кажется 10-летний опыт знает лучше яндекса. Для этого есть бизнес-обджектс разных фирм. К примеру - SAP BO. Суть в том, что у Вас есть некоторые бизнес-сущности. К примеру - Контрагент. Контрагент - как сущность БД может лежать в нескольких таблицах (адреса, счета и т.д.), но для бизнеса - это одно общее понятие. Так вот смысл бизнес обджектс в том, чтобы создать некоторый репозитарий таких бизнес-объектов, которые могут быть использованы для разных целей - как то просто получение заданного объекта, или сборка из объектов отчета, или создание новых объектов из существующих, поиск по объектам и прочее. Можно собрать таку систему на коленке. В данном случае, это будет классичиская таблица c наименованием объектов, их бизнес типами и т.д. Каждому объекту необходимо прикрепить - стандартный набор атрибутов, каждый из атрибутов - в поле "клоб" будет хранить запрос с биндами, которым можно получить значение атрибута для конкретного объекта. Так же, к таблице с header атрибутов - необходимо прилепить таблицу с значением данных атрибутов, если они пеманентны/или должны хранится. Логика данной системы основывается на запускаторе (движке) запросов определенных в атрибутах (Ваши файлы), их выполнению и обработке. Соответственно, крутится оно должно на динамик скуеле. Это минимум. Как максимум, далее - делается метада объектов на уровне бд (иерархии объектов или что-то еще), по ней делается маппинг объектов (связи через иерархию/реляцию) и далее - необходимо писать средства для конструирования новых объектов из текущих, это уже больше на ГУЙ и АПИ системы задача. В более интимных подробностях - расписывать долго и "слишком жирно" ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.07.2012, 14:49 |
|
||
|
|

start [/forum/topic.php?fid=32&msg=37877871&tid=1541611]: |
0ms |
get settings: |
8ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
150ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
43ms |
get tp. blocked users: |
1ms |
| others: | 226ms |
| total: | 460ms |

| 0 / 0 |
