Compañeros, tengo un pequeño problema con java al querer insertar en una tabla un valor relacionado a un sequence en oracle.
Imaginense una tabla x con dos campos:
Id number(18)
Nombre varchar2(30)
Direccion varchar2(30)
Creamos una sequence en oracle para utilizarla en la tabla x.
Creo una tabla y que tiene 2 campos
Nombre varchar2(30)
Direccion varchar2(30)
Le inserto valores a la tabla y.
Luego yo quiero hacer un insert a la tabla x de la siguiente forma
Insert into x select secuencia.nextvalue, Nombre, Direccion from y
Me da el siguiente error en java cuando lo hago a traves de un PreparedStatement:
java.sql.SQLException: ORA-01008: not all variables bound
El punto es el siguiente: Quiero hacer el insert en la tabla x a partir de cuantos registros tenga en la tabla y.
Pero deseo que el correlativo Id salga a partir de la secuencia creada.
Se que hay otra forma de hacerlo, pero yo quiero utilizar el Insert combinado con el Select en Oracle.
He buscado un buen rato en sitios de Internet para ver la sintaxis, pero no he hallado uno que me diga si se puede hacer esto o no se puede.
Si alguien ya hizo esto favor enviar un codigo de ejemplo en java o al menos algun sitio donde seguir investigando.
Gracias por toda su ayuda.
--
No virus found in this outgoing message.
Checked by AVG Free Edition.
Version: 7.5.446 / Virus Database: 268.18.18/733 - Release Date: 25/03/2007 11:07
Compañeros, tengo un pequeño problema con java al querer insertar en una tabla un valor relacionado a un sequence en oracle.
Tenes razon, le voy a agregar una clausula where para condicionar.
Te pregunto, tienes algun ejemplo con java donde utilices PreparedStatement?
Te agradeceria mucho pudieras enviarmelo.
--
No virus found in this incoming message.
Checked by AVG Free Edition.
Version: 7.5.446 / Virus Database: 268.18.18/733 - Release Date: 25/03/2007
11:07
Saludos
declare
id number;
begin
select secuencia.nextval into id from dual;
:new.id : = id;
end ;
La cláusula del insert te quedaría: si queres tener mas de una secuencia pasale como parametro el nombre
de tu sequencia y pone un case por cada sequencia y listo
> El 27/03/07, Pablo Molnar <pablo...@gmail.com> escribió:
Perdona la molestia, pero tienes un codigo java para invocar la funcion
f_get_sequence.
Gracias por la ayuda.
-----Mensaje original-----
De: jav...@googlegroups.com [mailto:jav...@googlegroups.com] En nombre de
Ezequiel Apfel
Enviado el: martes, 27 de marzo de 2007 15:15
Para: jav...@googlegroups.com
Asunto: [JavaSOS] Re: Pregunta sobre sequence en Oracle y java
--
No virus found in this incoming message.
Checked by AVG Free Edition.
Version: 7.5.446 / Virus Database: 268.18.20/736 - Release Date: 27/03/2007
16:38
--
No virus found in this outgoing message.
Checked by AVG Free Edition.
Version: 7.5.446 / Virus Database: 268.18.20/736 - Release Date: 27/03/2007
16:38
El 28/03/07, Jaime Galindo <jgal...@mh.gob.sv> escribió: