Guido Leenders
Guido Leenders

Reputation: 4262

On Oracle insert with Oracle managed driver ORA-01461: can bind a LONG value only for insert into a LONG column

When using the ODP.net managed code driver for Oracle (so without full Oracle SQL*Net installation), I receive an

ORA-01461: can bind a LONG value only for insert into a LONG column.

When inserting data using statements such as:

insert into bubs_taak_notities_v
(tak_code, tne_tekst_l, tne_onderwerp, tne_datum_ontvangen, tne_datum_gecommuniceerd, tne_orig_system_group, tne_publiceren_vlag, tnc_code, tne_email_adres_van, tne_email_adres_naar, tne_email_adres_cc, tne_email_adres_bcc, gbr_atr_naam, tne_mime_type, tne_afgehandeld_vlag) 
values 
(:i1, :i2, :i3, :i4, :i5, :i6, :i7, :i8, :i9, :i10, :i11, :i12, :i13, :i14, :i15)

When the BLOB is at the end of the column list, the problem does not appear.

How can I avoid this ORA-01461 and stay away from a full Oracle SQL*Net installation?

Upvotes: 0

Views: 560

Answers (1)

Guido Leenders
Guido Leenders

Reputation: 4262

The problem is caused by a bug in the Oracle managed driver.

By upgrading Oracle.ManagedDataAccess.dll from

4.121.2.20141216 ODAC RELEASE 3

To

4.121.2.20150926 ODAC RELEASE 4

the problem no longer occurs.

Upvotes: 1

Related Questions