Re: ROWID added to SQL from OLE DB driver
- From: "Matthias Hoys" <idmwarpzone_NOSPAM_@xxxxxxxxx>
- Date: Thu, 8 Dec 2005 20:05:32 +0100
"Sybrand Bakker" <postbus@xxxxxxxxxxxxxxxxx> wrote in message
news:g7pep19ri5jkdd2sdqa10pj3e36od4dn3q@xxxxxxxxxx
> On Wed, 7 Dec 2005 22:22:48 +0100, "Matthias Hoys"
> <idmwarpzone_NOSPAM_@xxxxxxxxx> wrote:
>
>>Has anyone seen this weird behaviour before ? Could this be a
>>configuration
>>issue of the OLE DB Provider ? I couldn't find anything on the support
>>site
>>of Mickeysoft, will create a TAR tomorrow ...
>>
>
> Dump the Mickeysoft OLE DB provider, the Oracle provider is about
> twice as fast. Never ever use Mickeysoft drivers in conjunction with
> Oracle, it won't work without problems, ever.
>
> --
> Sybrand Bakker, Senior Oracle DBA
I found the origin of the problem, it has nothing to do with the MS OLE DB
provider (since the Oracle driver gave the same error), but with the
incorrect use of certain cursor types from within ADO.
It's explained by Metalink note 338383.1 :
This is caused by that cursor type (SQL_ATTR_CURSOR_TYPE) is downgraded from
adOpenStatic
(SQL_CURSOR_STATIC) to adOpenForwardOnly (SQL_CURSOR_FORWARD_ONLY, default).
adOpenStatic (SQL_CURSOR_STATIC) admit a scrollable cursor, which requires
a ROWID in the SQL, if the SQL will not admit a ROWID, then the cursor is
downgraded to Forward Only.
=> this is what happens here : SELECT on tables works fine, but not on views
The ODBC Driver get a PARSE error (ORA-01446) which indicate a downgrade of
the cursor to SQL
without ROWID, this is what going on beneath the Driver and the errorcode
should be restrained,
however in this case the error is populated since SQLCancel is issued by the
SQL_ATTR_QUERY_TIMEOUT is set.
.
- References:
- ROWID added to SQL from OLE DB driver
- From: Matthias Hoys
- Re: ROWID added to SQL from OLE DB driver
- From: Sybrand Bakker
- ROWID added to SQL from OLE DB driver
- Prev by Date: Re: Understanding direct path write event
- Next by Date: Re: diffrent O/S between failover server
- Previous by thread: Re: ROWID added to SQL from OLE DB driver
- Next by thread: slow query with IN list
- Index(es):
Relevant Pages
|
Loading