Oracle数据库 External component has thrown an exception

《Oracle数据库 External component has thrown an exception》

出现这种错误一般是在SQL语句执行前就报出的错误。这样的错误一般需要仔细检查SQL语句,以及参数的数据类型。

而在cmd.ExecuteNonQuery()中出现的错误,则很可能就排除了语法类的错误。

《Oracle数据库 External component has thrown an exception》

        public static int ExecuteSql(string strSQL, params OracleParameter[] commandParameters)
        {
            try
            {
                OpenConnection();
                OracleCommand cmd = new OracleCommand();
                PrepareCommand(cmd, Connection, null, CommandType.Text, strSQL, commandParameters);
                
                int val = cmd.ExecuteNonQuery();
                cmd.Parameters.Clear();
                return val;
            }
            catch (System.Exception ex)
            {
                throw ex;
            }
        }

《Oracle数据库 External component has thrown an exception》

 

近期遇到这样一个错误:

update HP_GSBM_GR set DATA_BM=:DATA_BM, UDT=:UDT, DETAILS=:DETAILS where TCOS_ID=:TCOS_ID and CURRENT_TYPE =:CURRENT_TYPE

 《Oracle数据库 External component has thrown an exception》

在执行时发生了莫名的错误。后来仔细检查过语法后,发现是参数的在commandParameters中出现的次序的错误问题。

看来,以后写SQL语句,最好能现在PL/SQL中检查后再测试才是正道,否则对于这种参数定义的次序出现也是错误的问题,真的在调试时极难发现。

 

没有整理与归纳的知识,一文不值!高度概括与梳理的知识,才是自己真正的知识与技能。 永远不要让自己的自由、好奇、充满创造力的想法被现实的框架所束缚,让创造力自由成长吧! 多花时间,关心他(她)人,正如别人所关心你的。理想的腾飞与实现,没有别人的支持与帮助,是万万不能的。

    本文转自wenglabs博客园博客,原文链接:    本文转自wenglabs博客园博客,原文链接:,如需转载请自行联系原作者
,如需转载请自行联系原作者

点赞