Java: Passing Array To Oracle Stored Procedure
来源:互联网 发布:永无止境 电影 知乎 编辑:程序博客网 时间:2024/04/29 21:28
http://auv2009.blog.163.com/blog/static/68858712201081711141383/
http://viralpatel.net/blogs/java-passing-array-to-oracle-stored-procedure/
为了解决这个迷茫了很久,主要是总是报无效的数据类型这个错误,后来才知道
自定义数组类型的名称必须要大写(具体为啥要大写建议参考oracle文档,我也没搞明白)
sql代码:
创建 存放字符串的类型
create or replace type vast.p_table as table of varchar2(20)
创建procedure
create or replace procedure vast.proc_comm_getListByGroup( p_cursor out pkg_return_list.list_cursor, p_array in p_table)asbegin opechuan=n p_cursor for select to_char(timeslot,'yyyy-mm-dd hh24:mi:ss'),fromuser,touser,locat from vast.comm_data_fri where fromuser=p_array(0);end;java代码:
<span style="white-space:pre"></span>DBConnect dbc = new DBConnect();List<CommData> comm_data_list = null;Connection connection = dbc.getConnection();try {ArrayDescriptor arraydesc = ArrayDescriptor.createDescriptor("VAST.P_TABLE",connection); ARRAY array = new ARRAY(arraydesc, connection, personnames);CallableStatement cs = connection.prepareCall("{call vast.proc_comm_getListByGroup(?,?)}");cs.registerOutParameter(1, oracle.jdbc.OracleTypes.CURSOR);cs.setArray(2, array); cs.execute();ResultSet rs = (ResultSet)cs.getObject(1);if(rs == null){System.out.println("null");}comm_data_list = new ArrayList<CommData>();while(rs.next()){CommData commdata = new CommData();commdata.setTimeslot(rs.getString("timeslot"));commdata.setFromuser(rs.getString("fromuser"));commdata.setTouser(rs.getString("touser"));commdata.setLocation(rs.getString("locat"));comm_data_list.add(commdata);}cs.close();rs.close();
但是解决完上面问题之后,发现数组是穿进去了,但是只有长度信息,值是空的,找了好多网页之后,才发现只需要添加orai18n.jar文件就可以了。。。
0 0
- Java: Passing Array to Oracle Stored Procedure
- Java: Passing Array To Oracle Stored Procedure
- ORA-06550 & PLS-00306 passing a parameter array to a stored procedure
- Passing an array or DataTable into a stored procedure
- DB2 Passing transition tables from trigger to stored procedure
- pass blob to oracle stored procedure
- Oracle Java Stored Procedure调用Unix shell
- Oracle Java Stored Procedure + 包调用
- oracle, stored procedure, cursor
- Oracle Stored Procedure example
- Java - Stored Procedure OUT Parameter
- navicate how to create a stored procedure
- navicate how to create a stored procedure
- How to call stored procedure in Hibernate
- How to call stored procedure in Hibernate
- How To Use a DataReader Against an Oracle Stored Procedure in Visual C# .NET
- How to call Oracle function or stored procedure using spring persistence framework?
- Get Dataset from Stored Procedure in Oracle
- android渠道包自动化验证
- hdu 2030 汉字统计 (java)
- 机房收费系统 Section One
- 牛腩新闻发布系统-零碎拾起
- Java第二次作业
- Java: Passing Array To Oracle Stored Procedure
- 手把手教你cuda5.5与VS2010的编译环境搭建
- Leetcode: Add and Search Word - Data structure design (Java)
- JavaScript 入门(三)BOM浏览器对象模型
- Spring的@Autowired需要注意的地方
- 用js判断浏览器类型以及版本
- GitHub简单入门教程
- 生物芯片 完全平方数
- 百度电话面试PHP职位