ODP Managed driver: Column 'TableName' does not belong to table ComputedColumns

Jun 28, 2013 at 2:17 PM
Edited Jun 28, 2013 at 2:18 PM
I just installed the managed ODP provider and it seems DatabaseSchemaReader has a problem using it. I get an error saying 'Column 'TableName' does not belong to table ComputedColumns.' exception... Is it supposed to work or... ?

This is what I have in my config file (so you can see the version I am using an all):

  <remove invariant="Oracle.ManagedDataAccess" />
  <add name="Oracle Managed Data Provider for .NET" 
       description="Oracle Managed Data Provider for .NET" 
       type="Oracle.ManagedDataAccess.Client.OracleClientFactory, Oracle.ManagedDataAccess, Version=, Culture=neutral, PublicKeyToken=89b483f429c47342" />
Thanks a lot!
Jun 28, 2013 at 7:12 PM
I haven't tried the ODP Managed Driver yet, but I routinely use System.Data.OracleClient, traditional ODP (via OCI) and Devart, so I'm surprised that it's giving a different result.

ComputedColumns is Oracle 11 + only, so OracleSchemaReader has a check for version (using DbConnection.ServerVersion). Does the Managed Driver report a version that is 11 even when it's 10?

Or are you using 12c already? If Oracle have changed all_tab_cols, I'm going to have to do another version check (thanks Oracle!)

Jun 28, 2013 at 7:20 PM
Says and Oracle v$version returns this:

Oracle Database 11g Release - 64bit Production
PL/SQL Release - Production
CORE Production
TNS for 64-bit Windows: Version - Production
NLSRTL Version - Production
Jul 1, 2013 at 11:33 AM
Got it. The managed provider works fine, oracle versions are fine, that was a false lead.

I'll commit the fix later today.
Jul 1, 2013 at 6:35 PM
Fix is commit 27515.
Jul 16, 2013 at 6:08 PM
Marin, sorry for disappearing but I've had to switch my attention to something else and I am still not quite done with that.
I'll report my findings as soon as I have a chance to look at it.