07.12.2007, 12:06 | #7 |
Moderator
|
Если вам надо для анализа и собственного понимания, то я вот когда-то (когда еще совсем был не бум-бум в Dict* классах) использовал прямой запрос для СУБД Oracle.
Предварительно проверьте, что таблица XRefPaths у вас непустая. Если пустая, то сначала постройте "Перекрестные ссылки". Запрос такой: Код: SELECT path, path_clear, TRIM(SUBSTR(path_clear, 1, end_table - 1)) AS table_name, TRIM(SUBSTR(path_clear, end_table + 1, end_relation - end_table - 1)) AS relation_name, TRIM(SUBSTR(path_clear, end_relation + 1, end_equal - end_relation - 1)) AS relation_left, TRIM(SUBSTR(path_clear, end_equal + 2, LENGTH(path_clear) - end_equal - 1)) AS relation_right FROM ( SELECT path, path_clear, INSTR(path_clear, '\', 1,1) AS end_table, INSTR(path_clear, '\', 1,2) AS end_relation, INSTR(path_clear, '==', 1,1) AS end_equal FROM ( SELECT path, REPLACE(REPLACE(TRIM(path), '\Data Dictionary\Tables\', ''),'\Relations', '') AS path_clear -- REPLACE(REPLACE(TRIM(path), '\Data Dictionary\Extended Data Types\', ''),'\Relations', '') AS path_clear FROM XREFPATHS WHERE path LIKE '%Relations%==%' AND path LIKE '\Data Dictionary\Tables\%' -- AND path LIKE '\Data Dictionary\Extended Data Types\%' ORDER BY path ) ) |
|