Здравствуйте, столкнулся с проблемой — приходится реализовывать взаимодействие с существующей системой, которая использует БД Oracle. Есть куча основных таблиц с 80-100 столбцами, многие из которых содержат в себе ключи для связанных таблиц, справочников.
Требуется написать скрипт выбирающий значения с основной таблицы, а также значения со связанных таблиц — то есть раскрыл справочники.
Задача по идее тривиальная и легко бы делалась ручками, если бы не сроки и такой огромный объём таблиц и полей.
Может есть функционал в oracle, который умеет джоинить связанные таблицы, или 3d party инструмент, который поможет сгенерить нужный скрипт.
Думаю пару иллюстраций не повредит — накидал пример:
Основная таблица:
Её ограничения:
Внешняя таблица:
Результат аналогичный, приведённому ниже:
<font color="black"><font color="#0000ff">Select</font> m.id,<br/>
first_field,<br/>
second_field,<br/>
--прикреплённая табличка<br/>
s.short_name <font color="#0000ff">as</font> second_field_short_name,<br/>
s.long_name second_field_long_name,<br/>
s.amount <font color="#0000ff">as</font> second_field_amount third_field,<br/>
fourth_field,<br/>
fifth_field,<br/>
<br/>
<font color="#0000ff">from</font> a_maintable m<br/>
<font color="#0000ff">left</font> <font color="#0000ff">join</font> a_ref_second s<br/>
<font color="#0000ff">on</font> m.second_field = s.ID</font><br/>
<br/>
<font color="gray">* This source code was highlighted with <a href="http://virtser.net/blog/post/source-code-highlighter.aspx"><font color="gray">Source Code Highlighter</font></a>.</font>
Плиз халп!