How to read a CLOB column in Oracle using OleDb ?
        Posted  
        
            by T.Falise
        on Stack Overflow
        
        See other posts from Stack Overflow
        
            or by T.Falise
        
        
        
        Published on 2010-03-29T11:56:14Z
        Indexed on 
            2010/03/29
            12:33 UTC
        
        
        Read the original article
        Hit count: 501
        
Hi,
I have created a table on an Oracle 10g database with this structure :
create table myTable
(
id       number(32,0)      primary key,
myData   clob
)
I can insert rows in the table without any problem, but when I try to read data from the table using OleDb connection, I get an exception.
Here is the code I use :
using (OleDbConnection dbConnection = new OleDbConnection("ConnectionString"))
{
    dbConnection.Open();
    OleDbCommand dbCommand = dbConnection.CreateCommand();
    dbCommand.CommandText = "SELECT * FROM myTable WHERE id=?";
    dbCommand.Parameters.AddWithValue("ID", id);
    OleDbDataReader dbReader = dbCommand.ExecuteReader();
}
The exception details seems to point on an unsupported data type :
System.Data.OleDb.OleDbException: 
Unspecified error Oracle error occurred, but error message could not be retrieved from Oracle. 
Data type is not supported.
Does anyone know how I can read this data using the OleDb connection ?
PS : The driver used in this case is the Microsoft one.
© Stack Overflow or respective owner