обработка select
От: nemo_negil  
Дата: 27.08.04 13:16
Оценка:
нужно для имеющегося произвольного запроса к БД Oracle8i получать комментарии к столбцам таблиц,
которые являются результатом запроса. Как можно реализовать данную задачу?
Re: обработка select
От: Softwarer http://softwarer.ru
Дата: 27.08.04 13:45
Оценка:
Здравствуйте, nemo_negil, Вы писали:

_>нужно для имеющегося произвольного запроса к БД Oracle8i получать комментарии к столбцам таблиц,

_>которые являются результатом запроса. Как можно реализовать данную задачу?

Хм. Насколько я помню, в Delphi доступна информация о том, из какого поля взято значение колонки датасета. А в общем случае — парсить SQL, вестимо.
Re: обработка select
От: Sergey Ten http://www.fastalgo.com
Дата: 27.08.04 14:54
Оценка: 4 (1)
Здравствуйте, nemo_negil, Вы писали:

_>нужно для имеющегося произвольного запроса к БД Oracle8i получать комментарии к столбцам таблиц,

_>которые являются результатом запроса. Как можно реализовать данную задачу?

В OCIStmtExecute последним параметром идет mode. Если передать ему OCI_DESCRIBE_ONLY, то он вернет информацию о колонках без выполнения запроса.
Re[2]: обработка select
От: Sergey Ten http://www.fastalgo.com
Дата: 27.08.04 16:53
Оценка:
Здравствуйте, Sergey Ten, Вы писали:

ST>Здравствуйте, nemo_negil, Вы писали:


_>>нужно для имеющегося произвольного запроса к БД Oracle8i получать комментарии к столбцам таблиц,

_>>которые являются результатом запроса. Как можно реализовать данную задачу?

Возможно, я неправильно прочитал вопрос, и речь идет о
SQL> create table test_table (n number, s varchar2(20));

Table created.

SQL> comment on column test_table.n is 'Some numeric data';

Comment created.

SQL> comment on column test_table.s is 'Some text data';

Comment created.

SQL> select column_name, comments from user_col_comments where table_name = 'TEST_TABLE';

COLUMN_NAME   COMMENTS
------------  ----------------------------------------------------------------
N             Some numeric data
S             Some text data

И тогда
select
  n, (select comments from user_col_comments
      where table_name = 'TEST_TABLE' and column_name = 'N') "What's N",
  s, (select comments from user_col_comments
      where table_name = 'TEST_TABLE' and column_name = 'S') "What's S"
from test_table
Re: обработка select
От: nemo_negil  
Дата: 30.08.04 09:49
Оценка:
Здравствуйте, nemo_negil, Вы писали:

_>нужно для имеющегося произвольного запроса к БД Oracle8i получать комментарии к столбцам таблиц,

_>которые являются результатом запроса. Как можно реализовать данную задачу?

Всем спасибо!
я всё таки надеялся, что где-то этот лисапед изобрели. но похоже действительно прийдеться парсить...
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.