Sigo intentando aprender... y ya voy llegando a los procedimientos almacenados !! :))
Tengo un inconveniente, que paso a exponer.
Situacion:
Tabla titles con las columnas: Title_id, Title, Type, pub_id, price, pubdateEl procedimiento que hice es el siguiente:
Tabla Publishers con las columnas: Pub_id, Pub_name
Tabla titleauthor con las columnas: au_id, title_id
Luego de ejecutarlo con los siguientes datos:
create procedure sp_insercion_relacionada (in IdLibro varchar(6), in titulo varchar(12), in tipo char(12), in precio decimal(19,4), in fecha_publi datetime, in nombre_autor varchar(40), in apellido_autor varchar(20), in editorial varchar(40))
Begin
Declare IDPub char(4);
Declare IdAutor varchar(11);
Select pub_ID into IDPub From publishers Where pub_name=editorial;
Insert into titles(title_id,title,type,Pub_id ,price,pubdate) values(IdLibro,titulo,tipo,IDPub,precio,fecha_publ i);
Select au_id into IdAutor from authors where (au_lname=apellido_autor) AND (au_fname=nombre_autor);
Insert into titleauthor(au_id,title_id) values(IdAutor,IdLibro);
End;
Call sp_insercion_relacionada("N321","An Introduction to Tivoli Enterprise","Networks",325.40,19991020, "Marjorie","Green","GGG&G")Obtengo el siguiente error: Duplicate entry 'N321' for key 1
Además, solo se hace el primer Insert (en titles) pero no el segundo (a titleauthor).
No tengo entradas duplicadas, así es que no entiendo que es lo que motiva el error.
Alguien podría ser tan amable de marcarme el camino ? Sinceramente ya llevo algunas horas buscándole la vuelta y no lo consigo...
Gracias desde ya por vuestra atención.