当前位置:首页 --> 错误日志 --> 正文

Oracle LONG类型的读取方式

2008-6-15 22:53:00 来源: 浏览次数: 评论数: 字号:[ ]

今天偶然发现,使用下面的代码不能读取完整的LONG字段数据:

CODE:

string sql = "select * from mail";

OleDbConnection conn = new OleDbConnection(ConnectionString);

OleDbCommand cmd = new OleDbCommand(sql, conn);

OleDbDataAdapter adapter = new OleDbDataAdapter(cmd);

DataSet ds = new DataSet();

adapter.Fill(ds);

这样,读取出来的LONG类型字段,只有很少的一部分数据。而改用System.Data.OracleClient命名空间下面的类改写上面的代码,则可以成功取出:

CODE:

string sql = "select * from mail";

OracleConnection conn = new OracleConnection(ConnectionString);

OracleCommand cmd = new OracleCommand(sql, conn);

OracleDataAdapter adapter = new OracleDataAdapter(cmd);

DataSet ds = new DataSet();

adapter.Fill(ds);

看来Oracle真的很微妙。导致这个结果的原因还没有找到,谁知道的,麻烦告知下。

 

另:使用System.Data.OleDb命名空间的类进行Update操作是没有问题,也没有出现大于4000个字符会报错的情况。

 
?
?