NHibernate配置的Driver为NHibernate.Driver.OracleClientDriver,存入Clob、NClob字段,值比较大时报错,错误信息
中文:ORA-01461:仅可以为插入 LONG 列的 LONG 值赋值
英文:ORA-01461: can bind a LONG value only for insert into a LONG column
Google一下有很多人碰到这个问题,有人猜测是MS System.Data.OracleClient的一个Bug,方法是改用Oracle提供的Oracle.DataAccess。
解决方法:
下载安装ODAC (Oracle Data Access Components),将NHibernate的Driver配置为NHibernate.Driver.OracleDataClientDriver,确保运行目录下有Oracle.DataAccess.dll文件。