文章详情

  • 游戏榜单
  • 软件榜单
关闭导航
热搜榜
热门下载
热门标签
php爱好者> php文档>Oracle.DataAccess.Client.OracleException ORA-00600: 内部错误代码,通过C#执行上面存储过程报错,而通过PLS

Oracle.DataAccess.Client.OracleException ORA-00600: 内部错误代码,通过C#执行上面存储过程报错,而通过PLS

时间:2011-03-04  来源:KSpring

 

 

CREATE OR REPLACE PROCEDURE SP_CA_EDI_TO_TXT(S_FILTERSTR IN VARCHAR2,
                                             S_ROLEID    IN VARCHAR2,
                                             S_USERID    IN VARCHAR2,
                                             RC1         OUT PACKAGE_FRTNET.REFCURSOR)
/*******************************************************
  **************************************************/
 IS

  V_INDEX  INTEGER;
  V_START  INTEGER;
  V_SUBSTR VARCHAR2(100);

BEGIN
  DELETE FROM TMP_RP_REQUEST_STR_LIST;
  IF (S_FILTERSTR IS NOT NULL) THEN
    V_START := 1;
    V_INDEX := INSTR(S_FILTERSTR, ';', V_START);
    WHILE (V_INDEX >= 0 AND V_INDEX > V_START) LOOP
      IF (V_INDEX = 0) THEN
        V_SUBSTR := SUBSTR(S_FILTERSTR,
                           V_START,
                           LENGTH(RTRIM(S_FILTERSTR)) - V_START + 1);
      ELSE
        V_SUBSTR := SUBSTR(S_FILTERSTR, V_START, V_INDEX - V_START);
      END IF;

      INSERT INTO TMP_RP_REQUEST_STR_LIST (REQUEST_KEY) VALUES (V_SUBSTR);

      V_START := V_INDEX + 1;
      V_INDEX := INSTR(S_FILTERSTR, ';', V_START);
    END LOOP;
  END IF;

  OPEN RC1 FOR
    SELECT CEII.SHIP_EN_NAME AS SHIPPER_NAME,
           CEII.VOYAGE_NO,
           CEII.CUSTOM_S_D_NO,
           A.CNT_NO,
           (SELECT F_LINK(CEICIN.CARGO_DESCRIPTION_CN)
              FROM CA_EDI_IFCSUM_CARGO_IN CEICIN
             WHERE CEICIN.EII_ID = CEII.EII_ID
             AND CEICIN.RECORD_TYPE='0') AS CARGO_DESCRIPTION_CN
      FROM CA_EDI_IFCSUM_IN CEII
      JOIN TMP_RP_REQUEST_STR_LIST TMP
        ON TMP.REQUEST_KEY = CEII.EII_ID
      LEFT JOIN (SELECT CEICI.EII_ID,
                        f_link_lob(CEICI.CNT_NO || '/' ||
                                   SUBSTR(CEICI.CNT_SIZE_TYPE, 0, 2) || '''' ||
                                   '   ') AS CNT_NO
                   FROM CA_EDI_IFCSUM_CNT_IN CEICI
                   JOIN TMP_RP_REQUEST_STR_LIST TMP
                     ON TMP.REQUEST_KEY = CEICI.EII_ID
                  GROUP BY CEICI.EII_ID) A
        ON A.EII_ID = CEII.EII_ID;
END;

 

通过C#执行上面存储过程报错,而通过PLSQL执行不报错。谁知道原因。

 

System.Exception:  内部错误代码, 参数: [kokegPinLob1], [], [], [], [], [], [], [] ---> Oracle.DataAccess.Client.OracleException ORA-00600: 内部错误代码, 参数: [kokegPinLob1], [], [], [], [], [], [], []    在 Oracle.DataAccess.Client.OracleException.HandleErrorHelper(Int32 errCode, OracleConnection conn, IntPtr opsErrCtx, OpoSqlValCtx* pOpoSqlValCtx, Object src, String procedure)
   在 Oracle.DataAccess.Client.OracleException.HandleError(Int32 errCode, OracleConnection conn, IntPtr opsErrCtx, Object src)
   在 Oracle.DataAccess.Client.OracleDataReader.Read()
   在 FC.Server.DbAccess.CDbTransaction.FillDataTable(IDataReader reader, DataSet dataset, DataTableMappingCollection tableMappings, String tableName, Int32 intStartRecord, Int32 intMaxRecords)
   在 FC.Server.DbAccess.Oracle.COracleTransaction.DoQuery(String strCmdText, CDbParmCollection parameters, CommandType cmdtype, DataTableMappingCollection mappings, DataSet ds, Int32 startRecord, Int32 maxRecordCount, String tableName)
   --- 内部异常堆栈跟踪的结尾 ---
   在 FC.Server.DbAccess.Oracle.COracleTransaction.DoQuery(String strCmdText, CDbParmCollection parameters, CommandType cmdtype, DataTableMappingCollection mappings, DataSet ds, Int32 startRecord, Int32 maxRecordCount, String tableName)
   在 FC.Server.DbAccess.Oracle.COracleTransaction.DoQuery(String strCmdText, CDbParmCollection parameters, CommandType cmdtype, DataTableMappingCollection mappings, DataSet ds)
   在 FC.Server.DbAccess.CDbTransaction.QuerySP(CStoredProcedureParms par, DataSet result)

相关阅读 更多 +
排行榜 更多 +
毒药轮盘手机版下载

毒药轮盘手机版下载

休闲益智 下载
剑侠情缘零b服手游下载

剑侠情缘零b服手游下载

角色扮演 下载
惊魂动物园游戏手机版下载

惊魂动物园游戏手机版下载

冒险解谜 下载