Oracle.DataAccess.Client.OracleException ORA-00600: 内部错误代码,通过C#执行上面存储过程报错,而通过PLSQL执行不报错。谁知道原因。
2011-03-04 10:28
951 查看
0B2P0UHCCP10Z;0B2P0UHCD5112;0B321BD91Q1XL;0B2P0XXSXH70Y;0B2P17IZ2M733;0B2P17IZ3I73O;0B2P0XSUOE0JM;0B2P0XSUUW0JX;0B2P19QDZG748;0B2P19QE0U74D;0B2P19QE1T74I;0B2P19QE2M74N;0B3114VEPK5HE;0B3114VES65HT;0B311AJAVM6BY;0B311AJAXG6CD;0B311AJAY06CQ;
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)
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)
相关文章推荐
- ORACLE 11g 使用ROWNUM完美解决ORA-00600:内部错误代码
- 关于ORACLE提示:"System.Data.OracleClient.OracleException: ORA-06550: 第 1 行, 第 7 列: \nPLS-00306: 调用 'xxxxxx' 时参数个数或类型错误\nORA-06550: 第 1 行, 第 7 列: \nPL/SQL: Statement ignored\n\r\n 的错误
- System.Exception: System.Exception: ORA-00600: 内部错误代码, 参数: [13013], [5001], [92177], [21164083], [13
- oracle错误: ORA-00600: 内部错误代码, 参数: [kkqcscpopn_Int: 0], [], [], [], [], [], [], [], [], [], [], []
- Oracle恢复ORA-00600: 内部错误代码, 参数: [kcratr_scan_lastbwr]
- Oracle断电恢复ORA-00600: 内部错误代码, 参数: [kcratr_nab_less_than_odr], [1], [44437], [17323], [18486], [
- Oracle出现ORA-00600: 内部错误代码, 参数: [kcratr1_lastbwr]
- VS报错:Oracle.ManagedDataAccess.Client.OracleException: ORA-01461: 仅能绑定要插入 LONG 列的 LONG 值
- Oracle出现ORA-00600: 内部错误代码, 参数: [kcratr1_lastbwr]
- DB字段顺序与类的属性顺序一致:{Oracle.DataAccess.Client.OracleException ORA-00932: 数据类型不一致: 应为 TIMESTAMP, 但却获得 NUMBER
- 执行oracle中的job报错:ORA-12011:无法执行作业1存储过程执行DDL语句提示ORA-01031错误:权限不足
- :"System.Data.OracleClient.OracleException: ORA-06550: 第 1 行, 第 7 列: \nPLS-00306: 调用 'MEETING_NOTICE_CREATE' 时参数个数或类型错误
- EF:Oracle.DataAccess.Client.OracleException: ORA-12154: TNS:could not resolve the connect identifier specified
- ORACLE启动报错:ORA-00600: 内部错误代码,参数: [kcratr1_lostwrt], [], [], [], [], [], [], []
- Oracle内部错误:ORA-00600[17175]一例
- 简单搞一下 System.Data.OracleClient调用带blob、clob等大字段类型参数的存储过程!
- ORA-00600: 内部错误代码, 参数: [32695], [hash aggregation can't be done]
- SQL Server 第四堂课,创建存储过程。存储过程是一组编译在单个执行计划中的transact-SQL语句。存储过程相当于C#函数,可以允许模块化程序设计,允许更快执行如果某操作需要大量transct-SQL代码或需要重复执行,将在创建存储过程中对其进行分析和优化。
- zhgl 错误 其他信息: “Oracle.DataAccess.Client.OracleConnection”的类型初始值设定项引发异常。