:“System.Data.OracleClient.OracleException: Error while trying to retrieve text for error ORA-01036”,把oraComm的构造参数换成sql2的方式仍然不行。遍查代码没发现什么可疑的地方,所有实例、教程都是这么写的,而且OleDb提供者能运行,为什么OracleClient就不行了呢。
在遍查了国外的帖子后才发现问题,对于OracleClient提供者@id及?方式都不被支持。而是应该用如下方式定义:
string
sql3
=
"
select * from table1 where id=
"
:id
"
;
OracleCommand oraComm=new OracleCommand(sql3,connect);
oraComm.Parameters.AddWithValue(
"
:id
"
,
888
);
将@符号换成:号就可以了。