最近用clob字段来存储大段的文字数据,开始的方案是先在oracle中创建存储过程,传递clob类型,但是当数据量太大的时候,还是会报错:ORA-01460:转换请求无法实现或不合理解决。查了一下网上的解决方案,有的说是字符集的问题,修改后无效。后来查到说是通过存储过程传参会出问题,改成直接用SQL语句更新,成功。
关键代码:
orclCommand.CommandType = CommandType.Text;
orclCommand.Parameters.Clear();
orclCommand.CommandText = "update tb_test set textclob= :tcb where id=1";
OracleParameter op = new OracleParameter("tcb", OracleDbType.Clob);
op.Value = "大量的字符串.....";
orclCommand.Parameters.Add(op);
orclCommand.ExecuteNonQuery();