1.在PL/SQL中写SQL语句,习惯性结尾加分号(“;”),但是在C#中写SQL语句不必要加“;”。
例如:
with data as(……)
select * from data;
后面加分号了,就报个
ORA-00911: 无效字符
这样的错误。
2.在C#中调用存储过程,常常犯常识错误,下面是正确的使用方式
//注意:这里参数名称前面都不能加":"
OracleParameter[] parameter = {
new OracleParameter("p_pscode",OracleType.Number,15),
new OracleParameter("p_outputcode",OracleType.Number,3),
new OracleParameter("p_pollutantcode",OracleType.VarChar,50),
new OracleParameter("p_outMsg",OracleType.VarChar,500)
};
parameter[0].Value = model.pscode;
parameter[1].Value = model.outputcode;
parameter[2].Value = model.pollutantCode;
parameter[3].Direction = System.Data.ParameterDirection.Output;
DBHelperOra.RunProcedure("pkg_DataXY.proc_hourwaterinputfacdata", parameter);
string msg = parameter[3].Value.ToString();