#c# #oracle #odp.net
#c# #Oracle #odp.net
Вопрос:
С помощью ODP.Net
пакета мы заполняем результат простого запроса в Dataset
by Oracle.ManagedDataAccess.Client.OracleDataAdapter
.Я хочу получить немного больше описания для результирующих столбцов. Было бы неплохо, если бы я мог определить заголовок для столбцов в Oracle
и получить их в результирующем наборе данных.
Я нашел способ добавить комментарий к столбцу в Oracle
:
COMMENT ON COLUMN my_table.my_columns IS 'MY_CUSTOM_CAPTION'
но я не знаю, как мы можем это получить.
С другой стороны, я нашел два варианта ( Caption
amp; Extended properties
) в результирующем наборе данных, который, как я предполагаю, является тем, что я ищу, но, похоже, я ошибаюсь: ( :
Кто-нибудь знает способ поместить некоторое описание или альтернативный заголовок к столбцам в Oracle DB и прочитать их в приложении с помощью Odp.Net
?
Ответ №1:
Я бы рекомендовал создать представление из вашей таблицы следующим образом:
CREATE OR REPLACE VIEW V_my_table AS
SELECT my_column AS "My Caption even with spaces"
FROM my_table;
Вы также можете выполнять операции DML, такие как УДАЛЕНИЕ, ОБНОВЛЕНИЕ или ВСТАВКА в такие представления.
Ответ №2:
Я думаю, есть два возможных способа, которые вы можете выбрать.
- Прочитайте комментарии к столбцу от Oracle, как вы описали в своем вопросе
- Создайте собственную таблицу, в которой вы храните дополнительную информацию
В обоих случаях вам нужно присоединить дополнительную таблицу к вашему запросу. Если вы хотите прочитать комментарии к столбцу, взгляните на Dba_col_comments. В этой таблице хранятся все columncomments, которые вы определяете в своей базе данных Oracledatabase. Таким образом, вы можете прочитать их с помощью sql. Но будьте осторожны, чтобы не заполнить комментарии к столбцу дополнительной информацией, описывающей столбец. Вы, администратор базы данных, и другие будут предполагать, что комментарий к столбцу описывает, что представляет собой столбец или что в нем хранится. Поэтому не записывайте в него никакой другой информации.
Второй подход заключается в том, что вы создаете собственную таблицу, где вы храните дополнительную информацию для своих столбцов. Вам просто нужны три столбца для таблицы, column и information. К этой таблице вы можете присоединиться.
Комментарии:
1. Способ, о котором вы упомянули, абсолютно будет работать идеально. но мы не можем изменить наши запросы или процедуры, чтобы добавить результат таблицы описания! По крайней мере, сейчас это невозможно (подумайте о тысячах случаев)! Я предпочитаю использовать некоторые встроенные средства, чтобы оправдать наши ожидания как можно скорее.
2. Будет сложно что-то изменить, если вы ничего не можете изменить.