Поиск известного значения в неизвестной базе...
Учебный тренинг. SQL от новичка до профессионала.
Бесплатные авторские видеокурсы SQL, PLSQL, JAVA
Чалышев Максим Михайлович
Иногда, в процессе работы ,приходится сталкиваться с задачами,
когда знаешь некоторое значение в базе , например уникальный идентификационный номер,
и необходимо определить в каких таблицах, и каких столбцах базы данное значение расположено
Особенно это справедливо , когда работаешь с чужой базой , и имеешь ограниченный набор прав,
например нет возможности трассировки , а клиентская часть представляет собой веб интерфейс , который является частью сложной многозвенной структуры общего приложения.
То есть, ты видишь на экране условное значение , необходимо разобраться , из каких таблиц и столбцов значение считывается.
Приведу несколько примеров, которые лично мне помогли решить данную задачу.
Подготовим тестовые данные
соберем статистику по таблицам необходимой схемы
читать дальше...
Бесплатные авторские видеокурсы SQL, PLSQL, JAVA
Чалышев Максим Михайлович
Иногда, в процессе работы ,приходится сталкиваться с задачами,
когда знаешь некоторое значение в базе , например уникальный идентификационный номер,
и необходимо определить в каких таблицах, и каких столбцах базы данное значение расположено
Особенно это справедливо , когда работаешь с чужой базой , и имеешь ограниченный набор прав,
например нет возможности трассировки , а клиентская часть представляет собой веб интерфейс , который является частью сложной многозвенной структуры общего приложения.
То есть, ты видишь на экране условное значение , необходимо разобраться , из каких таблиц и столбцов значение считывается.
Приведу несколько примеров, которые лично мне помогли решить данную задачу.
Подготовим тестовые данные
create table t1(n number); create table t2(n number); create table t3(n number); create table t4(n number); insert into t1 select level from dual connect by level < 10; insert into t2 select level from dual connect by level < 20; insert into t3 select level from dual connect by level < 10; insert into t4 select level from dual connect by level < 20; commit;
соберем статистику по таблицам необходимой схемы
begin dbms_stats.gather_schema_stats(ownname => 'TRADE', estimate_percent => DBMS_STATS.AUTO_SAMPLE_SIZE, cascade=>FALSE); end;
читать дальше...