Dlaczego otrzymuję wyjątek OutOfRange w funkcji GetOrdinal tego pola CLOB?

To jest próbka mojego kodu. Pole FUNCTION_SCRIPT to pole CLOB (jedyne pole CLOB) w mojej tabeli IS_FUNCTION

public void ReadFunction(string FName, out string fContent) {
    OracleCommand command = _connection.CreateCommand();
    OracleTransaction transaction = _connection.BeginTransaction();
    command.Transaction = transaction;
    command.CommandText = "SELECT TO_CLOB(TO_NCLOB(FUNCTION_SCRIPT)) FROM IS_FUNCTION where FNAME=:fName ";
    command.Parameters.Add("FName", OracleType.NVarChar).Value = FName;
    OracleDataReader odr = command.ExecuteReader();
    int temp = odr.GetOrdinal("FUNCTION_SCRIPT");
    OracleLob myLob = odr.GetOracleLob(temp);
    fContent = (String)myLob.Value;
    odr.close();
}

Kiedy mam wyjątek poza zasięgiemtemp = odr.GetOrdinal("FUNCTION_SCRIPT") instrukcja jest wykonywana. Nie masz pojęcia dlaczego? Od kilku godzin próbuję przeczytać to pole CLOB. To jest najbliższy. Twoja pomoc byłaby bardzo mile widziana.

p.s. Czy to możliwe, że moja instrukcja SELECT jest problematyczna? Brałem kod z różnych referencji.

questionAnswers(2)

yourAnswerToTheQuestion