OracleDataAdapter oAdp = new OracleDataAdapter("select * from " + TABLE_NAME, SourceConnStr);
oAdp.Fill(dtTable);
执行此代码后,我收到错误:
Unsupported Oracle data type 101 encountered.
所以我搜索了相同内容,结果表明.NET目前不支持或识别二进制float / double以及它所指的表中的一列;是二进制双精度数据类型。请建议一种方法来确定表中的列是否为数据类型二进制float / double,并将其强制转换为适当的数字或varchar等其他数据类型。
Name Null Type
-------------- -------- -------------
EMPID NOT NULL VARCHAR2(20)
EMPNAME NOT NULL VARCHAR2(50)
EMPTYPE NOT NULL NUMBER(38)
EMPPHOTO BINARY_DOUBLE
DATEOFJOINING DATE
CONTACTNO VARCHAR2(20)
答案 0 :(得分:2)
您使用哪个OracleDataAdapter
?我想它来自System.Data.OracleClient.OracleDataAdapter
,如果您正在使用Oracle DB,请使用ODAC,Oracle.DataAccess.Client.OracleDataAdapter
,它适用于oracle数据类型。
答案 1 :(得分:1)
识别结构:
UITableViewController
的解决方法:
在select * from all_tab_columns where data_type like 'BINARY%' ;
中,使用例如数据转换替换列。 select
:
TO_CHAR