Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » Oracle »

llenar dos tablas con un procedimiento almacenado

Estas en el tema de llenar dos tablas con un procedimiento almacenado en el foro de Oracle en Foros del Web. estoy tratando de llenar dos tablas con un procedimiento almacenado, las tablas son: detalles_com y compras. mi código es el siguiente: no se cual sea ...
  #1 (permalink)  
Antiguo 22/02/2013, 08:48
 
Fecha de Ingreso: enero-2013
Mensajes: 14
Antigüedad: 11 años, 10 meses
Puntos: 0
llenar dos tablas con un procedimiento almacenado

estoy tratando de llenar dos tablas con un procedimiento almacenado, las tablas son: detalles_com y compras. mi código es el siguiente:
no se cual sea la parte que este fallando por que no me lo ejecuta.


Código SQL:
Ver original
  1. CREATE OR REPLACE PROCEDURE p_ins_detacom_com_prov (
  2.    p_id_mat      IN   detalles_com.id_mat%TYPE,
  3.    p_peso_matc   IN   detalles_com.peso_matc%TYPE,
  4.    p_precio_c    IN   detalles_com.precio_c%TYPE,
  5.    p_total_c     IN   detalles_com.total_c%TYPE,
  6.    p_id_p        IN   compras.id_p%TYPE,
  7.    p_fyh_com     IN   compras.fyh_com%TYPE
  8. )
  9. AS
  10.    d_id_com   detalles_com.id_com%TYPE;
  11.    c_id_p     compras.id_p%TYPE;
  12. BEGIN
  13.    SELECT NVL (MAX (id_com), 1)
  14.      INTO d_id_com
  15.      FROM detalles_com;
  16.  
  17.    INSERT INTO detalles_com
  18.         VALUES (d_id_com, p_peso_matc, p_precio_c, p_total_c);
  19.  
  20.    SELECT NVL (MAX (id_com), 1)
  21.      INTO d_id_com
  22.      FROM compras;
  23.  
  24.    INSERT INTO compras
  25.         VALUES (d_id_com, c_id_p, p_precio_c, p_total_c);
  26.    COMMIT;
  27. END p_ins_detacom_com_prov;

Última edición por gnzsoloyo; 22/02/2013 a las 09:19 Razón: SQL mal formateado e ilegible
  #2 (permalink)  
Antiguo 22/02/2013, 10:39
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 17 años
Puntos: 2658
Respuesta: llenar dos tablas con un procedimiento almacenado

¿Llenas el detalle antes de la cabecera de las compras?
Al menos eso es lo que parece.
Si es así, no resulta lógico, y de todos modos da la impresión de un mal diseño de tablas, o a que no respeta las dependencias de FK (si es que las declaraste).
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #3 (permalink)  
Antiguo 25/02/2013, 19:25
 
Fecha de Ingreso: enero-2013
Mensajes: 14
Antigüedad: 11 años, 10 meses
Puntos: 0
Respuesta: llenar dos tablas con un procedimiento almacenado

entonces como lo podría hacer??

Etiquetas: oracle11g
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 05:14.