Выбор значения по умолчанию для колонки оракула в .Net - PullRequest
1 голос
/ 13 сентября 2010

Я пытаюсь извлечь значение по умолчанию для столбца оракула из user_tab_columns, используя .Net.Это тип данных длинный, и когда я читаю его с помощью IDataReader, я получаю пустую строку.Как получить данные?

выберите имя_ столбца, значение_данных по умолчанию из столбца пользователя_таблицы, где имя_ столбца = 'XXX'

Ответы [ 2 ]

2 голосов
/ 28 июля 2011

Если вы используете драйверы ODP.NET

, попробуйте

    OracleCommand dbCommand = new OracleCommand();
    dbCommand.InitialLONGFetchSize = 1000;

InitialLONGFetchSize ограничивает длину данных в поле типа LONG

, это работает для меня;

1 голос
/ 13 сентября 2010

Тип данных LONG имеет множество ограничений на использование.Один из способов обойти это - создать хранимую функцию, например:

CREATE OR REPLACE FUNCTION column_default
   ( p_table VARCHAR2
   , p_column
   ) RETURN VARCHAR2
IS
    l_retval LONG;
BEGIN
    SELECT data_default
    INTO   l_retval
    FROM   user_tab_columns
    WHERE  table_name = p_table
    AND    column_name = p_column;

    RETURN l_retval;
END;

Теперь вызывайте эту функцию из .Net, а не выполняйте запрос напрямую.

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