关于java调用带有表变量的存储过程,字符变量无法传递的问题。 100
调用了一个带有表变量的Oracle11g的存储过程Object定义如下:/*createorreplacetypeOBJ_INWAREHOUSEasobject(0PLA...
调用了一个带有表变量的Oracle 11g 的存储过程
Object定义如下:
/*
create or replace type OBJ_INWAREHOUSE as object
(
0 PLATFORM_CD VARCHAR2(40),--平台代码
1 PARTINFO_ID NUMBER(18, 0),--商家ID
2 SKU_ID NUMBER(18, 0),--SKU ID
3 WAR_ID NUMBER(18, 0),--仓库 ID
4 LOTNO VARCHAR2(200),--批次号
5 DISLOTLOC_QTY NUMBER(18, 0),--入库数量
6 ASN_NO VARCHAR2(50),--操作单号
7 PARTINFO_CD VARCHAR2(50),--商家代码
8 PARTINFO_NM VARCHAR2(200),--商家名称--
9 SKU_CD VARCHAR2(50),--SKU 代码
10 SKU_NM VARCHAR2(200),--SKU 名称
11 WAR_CD VARCHAR2(50),--仓库代码
12 WAR_NM VARCHAR2(200),--仓库名称
13 LOC_CD VARCHAR2(50) --库位代码
)*/
int[] sqlTypes = { OracleTypes.JAVA_OBJECT, OracleTypes.INTEGER,
OracleTypes.INTEGER, OracleTypes.INTEGER, OracleTypes.VARCHAR,
OracleTypes.INTEGER, OracleTypes.VARCHAR, OracleTypes.VARCHAR,
OracleTypes.VARCHAR, OracleTypes.VARCHAR, OracleTypes.VARCHAR,
OracleTypes.NVARCHAR, OracleTypes.NVARCHAR, OracleTypes.NVARCHAR };
调用后发现数值变量能够正确传递,但是字符的没有办法传递。 展开
Object定义如下:
/*
create or replace type OBJ_INWAREHOUSE as object
(
0 PLATFORM_CD VARCHAR2(40),--平台代码
1 PARTINFO_ID NUMBER(18, 0),--商家ID
2 SKU_ID NUMBER(18, 0),--SKU ID
3 WAR_ID NUMBER(18, 0),--仓库 ID
4 LOTNO VARCHAR2(200),--批次号
5 DISLOTLOC_QTY NUMBER(18, 0),--入库数量
6 ASN_NO VARCHAR2(50),--操作单号
7 PARTINFO_CD VARCHAR2(50),--商家代码
8 PARTINFO_NM VARCHAR2(200),--商家名称--
9 SKU_CD VARCHAR2(50),--SKU 代码
10 SKU_NM VARCHAR2(200),--SKU 名称
11 WAR_CD VARCHAR2(50),--仓库代码
12 WAR_NM VARCHAR2(200),--仓库名称
13 LOC_CD VARCHAR2(50) --库位代码
)*/
int[] sqlTypes = { OracleTypes.JAVA_OBJECT, OracleTypes.INTEGER,
OracleTypes.INTEGER, OracleTypes.INTEGER, OracleTypes.VARCHAR,
OracleTypes.INTEGER, OracleTypes.VARCHAR, OracleTypes.VARCHAR,
OracleTypes.VARCHAR, OracleTypes.VARCHAR, OracleTypes.VARCHAR,
OracleTypes.NVARCHAR, OracleTypes.NVARCHAR, OracleTypes.NVARCHAR };
调用后发现数值变量能够正确传递,但是字符的没有办法传递。 展开
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询