Таблица -> Зависимость функции через виртуальный столбец не в all_dependencies? - PullRequest
2 голосов
/ 13 ноября 2009

У меня есть следующие объекты:

CREATE FUNCTION CONSTFUNC RETURN INT
DETERMINISTIC
AS
BEGIN
RETURN 1;
END;

CREATE TABLE "FUNCTABLE" (
  "ID" NUMBER(*,0) NOT NULL,
  "VIRT" NUMBER GENERATED ALWAYS AS ("CONSTFUNC"()) NULL
);

однако зависимость functable => constfunc не указана в зависимостях all_ или user_. Есть ли где-нибудь, где я могу получить доступ к этой информации о зависимости в словаре?

Ответы [ 2 ]

1 голос
/ 13 ноября 2009

Я только что создал вашу функцию и таблицу в 11G (11.1) и могу подтвердить ваши выводы. Я не мог найти ничего в документах Oracle.

Если вы отбросите функцию, состояние таблицы останется «VALID», но при выборе из таблицы вы получите ORA-00904: «CHAMP». «CONSTFUNC»: неверный идентификатор Это говорит о том, что сам Oracle не знает о зависимости.

Возможно, стоит задать этот вопрос на asktom.oracle.com, потому что у Тома Кайта будет доступ к дополнительной информации - он может даже вызвать ошибку об этом, если потребуется.

0 голосов
/ 13 ноября 2009

Выражение, используемое для создания виртуального столбца, указано в столбце DATA_DEFAULT в представлениях [DBA | ALL | USER] _TAB_COLUMNS.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...