サーバー環境:
OS:Windows Server 2012 R2
Oracle Database Standard Edition One 11g

クライアント環境:
OS:Windows 7 Professional SP1 32bit
Oracle Client 11.2.0.4
Microsoft Access 2013
ODBC

Access のアプリケーショより insert 文を発行した際、ORA-01461 が表示される。
テーブルの名称項目へ次のそれぞれの値をセットしてみた。

パターン:1
あいうえおかきくけこさしすせそ

パターン:2
あいうえおかきくけこさしすせ

パターン:3
あいうえおかきくけこさしす

パターン:4
あいうえおかきくけこさし

パターン:5
あいうえおかきくけこさ

パターン:6
あいうえおかきくけこ

パターン1から5の文字列ではエラーとなり、6.はエラーとなりませんでした。

但し、ここで SqlPlus から直接サーバーへ SQL 文を発行した場合、エラーになりませんでした。
と言うことは、ODBC(Oracl社) ドライバーが怪しいです。

オラクル社より下記のバグ情報を発見しました。
============================================================
Bug:18232462
GETTING ORA-01461 WHILE INSERTING INTO NVARCHAR2 COLUMNS WITH
CHINESE LANGUAGE
============================================================

11.2.0.4で発生する製品不具合(BUG:18232462)に該当していました。
本修正を含んだパッチをClient側に適用することで回避可能です。

## 事象詳細

BUG:18232462はODBC経由の処理で、カラム名の一部重複がある場合に
ORA-1461が発生する不具合です。今回のケースとは状況も異なるため
当初該当しないと考えておりましたが、弊社環境のテストの結果
今回の問題にもBUG:18232462の修正を適用することで事象が解消することが
確認出来ました。

## 対処策

BUG:18232462を含むパッチを適用することで問題を回避することが出来ました。

コメント

コメントを受け付けておりません。