本篇目录:
- 1、Java连接Oracle调用存储过程提示实际返回的行数超出请求的行数异常,怎...
- 2、JAVA调用存储过程,Oracle自定义类型作参数怎么写法
- 3、使用java调用timesten实现Oracle入库
- 4、jdbc连接oracle的方式?3种?哪3种
- 5、如何用java获得Oracle的function返回Cursor
Java连接Oracle调用存储过程提示实际返回的行数超出请求的行数异常,怎...
where staff_vs_group.emp_no = staff_dict.emp_no and rownum=1;这个符合这个条件的记录不止一行,而且很多行 而distinct只能把同一字段相同内容的删掉,不同内容的不会删掉。
语句有毛病,返回结果数超出你的定义。不过你没出具相关的问题内容,没办法解决。
ora-01422 实际返回的行数超出请求的行数 我出错的地方是在java代码中使用了触发器造成的。
productid=0240040001 中的 productid 是唯一主键么?如果不是 SELECT productid,productname,productprice,quantity FROM productinfo WHERE productid=0240040001;会返回多条记录,也就没法存到单一变量中了。
从报错看是字符串索引超出范围,需要看存储过程的执行结果。可以在sqlplus中执行exec PKG_I_DFXM.PRC_I_NBBPCF(你的参数)看下结果。
JAVA调用存储过程,Oracle自定义类型作参数怎么写法
在存储中定义一个 参数 为output,将存储过程中得到的值赋给这个参数,其他存储可以调 ---联机丛书 使用 OUTPUT 参数 OUTPUT 参数允许外部过程、批处理或多条 Transact-SQL 语句访问在过程执行期间设置的某个值。
api上的方法为 Connection.prepareCall(java.lang.String)prepareCall(String sql)throws SQLException 参数:sql - 可以包含一个或多个 ? 参数占位符的 SQL 语句。通常此语句是使用 JDBC 调用转义语法指定的。
SQL 类型 ARRAY 在 Java 编程语言中的映射关系。默认情况下,Array 值是对 SQL ARRAY 值的事务处理期引用。
建议你用字符串的方式存储数组,假如你有3个id的list分别为1,2,3,你可以传1,2,3这样的字符串给存储过程然后在存储过程里面再切割写逻辑。
写了个了简单的小例子,由于你没有说明当入参不为0时,返回什么值,所以默认返回入参了。
使用java调用timesten实现Oracle入库
1、import java.sql.*;import javax.sql.*;public class Tttest{ public static void main(String args[]){ //远程连接需要的url,程序和TT不在一台服务器。
2、libttJdbc.so 同时需要拷贝/etc/TimesTen/lib 中 ttjdbcjar 文件到应用程序的WEB-INF/lib目录 jdk路径和timesten路径根据具体情况改变 web程序在64位linux中使用64为jdk和64为weblogic中,使用java连接timesten。
3、加载驱动程序。创建连接对象。创建sql语句执行对象 。执行sql语句。对执行结果进行处理。关闭相关的连接对象即可(顺序跟声明的顺序相反)。
4、微信公众平台是可以开发java调用oracle这类型的接口的,一般通过MyBatis连接Oracle数据库。
jdbc连接oracle的方式?3种?哪3种
1、.JDBC OCI: 此驱动类似于传统的ODBC 驱动。因为它需要Oracle Call Interface and Net8,所以它需要在运行使用此驱动的JAVA程序的机器上安装客户端软件 2.JDBC Thin: 这种驱动一般用在运行在WEB浏览器中的JAVA程序。
2、java数据库连接(jdbc)api是一系列能够让java编程人员访问数据库的接口,各个开发商的接口并不完全相同。以下是一些技巧,这些技巧能够使我们更好地发挥系统的性能和实现更多的功能。
3、Files\SQLLIB\java\runtime.zip;c:classes1jar;也就是让java能够找到这个包。
如何用java获得Oracle的function返回Cursor
1、通过存储过程的出参,将“当前用户:user_id”连接串返回;比如:假设你的过程叫,prc_test,在参数列表中增加出参。
2、OPEN @CURSOR_subsidiaryaccounts END 我在JAVA代码中用JDBC模版执行这个存储过程,要注册个游标类型的返回值。
3、order by memberId compute sum(goodsQuantity) by memberId v_goods里面就是你要的值。这个和JAVA没关系,另,我这种写法是oracle的procedure的写法,不确定是否在你上面可以运行。或者你可以使用sql function获得返回值。
到此,以上就是小编对于jdbc访问oracle数据库的问题就介绍到这了,希望介绍的几点解答对大家有用,有任何问题和不懂的,欢迎各位老师在评论区讨论,给我留言。