Tag: oracle

将List of Bean传递给oracle存储过程的Java程序 – 一次传递整个列表而不是一个接一个地追加对象

我有以下TYPE,PROCEDURE和Java代码集。 我能够成功调用存储过程,但我必须一个接一个地追加对象。 我希望这个过程一次性发生,因为我正在处理超过50K +的记录。 任何人都可以让我知道需要做哪些更改,以便我可以将整个列表发送到一个。 代码可以在下面找到。 TYPES: CREATE OR REPLACE TYPE CER_GL_ENTRY_TYPE AS OBJECT (idKey NUMBER(10) ); CREATE or REPLACE TYPE CER_GL_ENTRY_TYPE_LIST AS TABLE OF CER_GL_ENTRY_TYPE; PROCEDURE: CREATE OR REPLACE PROCEDURE GL_PROCESS_BULK_ENTRIES ( p_array IN CER_GL_ENTRY_TYPE_LIST ,p_status OUT VARCHAR2) AS v_count NUMBER(5); row_detail CER_GL_ENTRY_TYPE; BEGIN –p_arr_int := NEW array_int (); –p_arr_int.EXTEND (10); –len := p_array.COUNT; […]

如何将用户创建的连接传递给hibernate

有什么办法,限制hibernate不创建自己的连接(我们在hibernate.properties或hibernate.cfg.xml中定义),而是我可以创建并传递连接到hibernate进行进一步处理。 问题是我需要在连接上设置ApplicationContext,因为我正在使用oracle连接。 我知道如何创建一个连接并将applicationContext设置为它..但问题是我不知道如何强制hibernate使用我创建的连接..请帮助..

linux服务器中的“java.sql.SQLException:I / O错误:连接重置”

我有一个连接到oracle数据库的java程序,有时它工作,有时会显示我的错误信息: 线程“main”中的exceptionjava.sql.SQLRecoverableException:IO错误:连接重置 at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:498) at oracle.jdbc.driver.PhysicalConnection.(PhysicalConnection.java:553) at oracle.jdbc.driver.T4CConnection.(T4CConnection.java:254) at oracle.jdbc.driver.T4CDriverExtension.getConnection(T4CDriverExtension.java:32) at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:528) 我怎么能解决这个问题? 谢谢。

Hibernate奇怪地收获clob值

我在两个表之间有一对多的关系。 许多表包含clob列。 clob列在hibernate中看起来像这样: @CollectionOfElements(fetch = EAGER) @JoinTable(name = NOTE_JOIN_TABLE, joinColumns = @JoinColumn(name = “note”)) @Column(name = “substitution”) @IndexColumn(name = “listIndex”, base = 0) @Lob private List substitutions; 所以基本上我可能会注意到一些替换,比如”foo”和”fizzbuzz” 。 所以在我的主表中我可以有一个带有id 4的Note,在我的NOTE_JOIN_TABLE我会有两行, “foo”和”fizzbuzz” ,它们都与Note有关系。 但是,当其中一个插入DB时,较大的替换值被裁剪为与最短的一样长。 所以在这种情况下,我会在DB中使用”foo”和”fizzbuzz”而不是”foo”和”fizzbuzz” 。 你知道为什么会这样吗? 我已经检查并确认它们没有被我们的代码中的任何地方裁剪,它是彻底的hibernate。

如何使用hibernate查询连接表?

我在Oracle SQL Developer中创建了三个表 1.Test_Employee2 2.Test_Project2 3.Employee_Project2 。 表Employee_Project2是连接表,因为Test_Project2和Employee_Project2之间的关系是Many-To-Many 。 在hibernate中,我分别为Test_Project2和Employee_Project2表创建了两个hibernate类TestEmployee和TestProject , 而Employee_Project2表在TestProject hibernate类中定义如下: @ManyToMany(cascade = CascadeType.ALL) @JoinTable(name = “Employee_Project2”, joinColumns = @JoinColumn(name = “proj_id”), inverseJoinColumns = @JoinColumn(name = “emp_id”)) private Set employeesList; 我用一些记录填充了表Test_Project2和Employee_Project2 ,并且连接表Employee_Project2自动填充了一些记录。 现在我面临的问题是,我想在使用hiberante的连接表Employee_Project2上使用一个简单的select语句,如下所示: String hql = “FROM Employee_Project2”; Query query = session.createQuery(hql); List results = query.list(); for (Object row : results) { //what […]

如何通过hibernate访问pl / sql proc中的out参数

我有一个带有以下签名的pl / sql过程 PROCEDURE pr_log_process_started ( p_process_id IN log_process_status.process_id%TYPE, p_run_id IN OUT log_process_status.run_id%TYPE); 如何通过Hibernate调用此proc并在调用后访问第二个参数的值?

如何使用EclipseLink调用函数

如何调用使用EclipseLink返回sys_refcursor的Oracle函数? 有一个文档说明了调用一个函数,但不知道如何调用一个返回sys_refcursor的函数。 http://eclipse.org/eclipselink/documentation/2.4/jpa/extensions/a_namedstoredfunctionquery.htm 我试过如下 @NamedStoredFunctionQuery(name = “findEmployees”, functionName = “getEmps”, parameters = { @StoredProcedureParameter(queryParameter = “user”, name = “username”, direction = Direction.IN, type = String.class) } , returnParameter = @StoredProcedureParameter(queryParameter = “c_cursor”) ) Oraclefunction CREATE or REPLACE FUNCTION getEmps (username varchar2) RETURN SYS_REFCURSOR AS c_cursor SYS_REFCURSOR; BEGIN OPEN c_cursor FOR SELECT * FROM employees where […]

如何在Java中将zip文件移动到blob列?

我有一个Java程序,它创建了许多xml文件,然后将它们压缩并将它们保存到文件系统中。 稍后在程序中我想将相同的zip文件放入我的oracle数据库的blob列中。 问题是我不知道该怎么做。 我不需要阅读它或对数据做任何事情,只需将其移动到数据库以进行持久的中央存储。 谢谢!

在hibernate查询语言中舍入到小数点后2位

嗨,有人可以帮我如何在hql中舍入到2位小数? 我在网上找不到任何东西。 以下是我的查询: Select p.amount as amt,p.desc from pay p, register r where r.type=?1 and r.code=?2; 如果有人可以提供帮助,我会很高兴的。 使用的技术:hibernate,spring,java,primefaces 4.0,oracle数据库

使用JDBC编写带有绑定变量的匿名PL / SQL块

我有一个带有绑定变量的匿名PL / SQL块,我想通过JDBC运行。 PL / SQL块示例: variable v_value number declare v_return varchar2(30); begin :v_value:=300; select ename into v_return from emp where empno=:v_value; end; 相应的Java代码将使用带有“?”的转义语法 设置变量。 所以这个块看起来像这样(如果我错了,请纠正我): String block = “declare v_return varchar2(30);” + “begin” + “? := 300;” + “select ename into v_return from emp where empno = ?;” + “end;” 现在,假设我的变量是一个INPUT参数,我将不得不像这样设置参数: // omitting the […]