Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Procedura wprowadzająca dane do tabeli
Arhimer
post
Post #1





Grupa: Zarejestrowani
Postów: 6
Pomógł: 0
Dołączył: 28.11.2015

Ostrzeżenie: (0%)
-----


Witam napisałem pewna procedurę ale nie jestem w stanie stwierdzić gdzie jest błąd i czemu po jej wywołaniu nie wprowadza żadnych wartości

DELIMITER //

CREATE PROCEDURE dodaj_książke
(
IN pr_imie text,
IN pr_nazwisko text,
IN pr_tytuł text,
IN pr_regał int(11),
IN pr_gatunek char(20)
)

BEGIN

DECLARE m1 int DEFAULT 0;
DECLARE m2 int DEFAULT 0;
DECLARE m3 int DEFAULT 0;
DECLARE m4 int DEFAULT 0;

set m1 =(SELECT max(id_autora) FROM autor);
set m2 =(SELECT max(ID_Książki) FROM książki);
set m3=m2+1;

IF((SELECT `Imię autora` FROM autor) LIKE pr_imie AND ( SELECT `Nazwisko autora`FROM autor) LIKE pr_nazwisko)

THEN

SET m1 =(SELECT ID_autora FROM autor);
INSERT INTO Książki VALUES (m3,pr_tytuł,m1,pr_regał,pr_gatunek);

ELSE

SET m4=m1+1;
INSERT INTO Autor VALUES (m4,pr_imie,pr_nazwisko);
INSERT INTO Książki VALUES (m3,pr_tytuł,m4,pr_regał,pr_gatunek);

end if;

END; //
DELIMITER ;




Procedura ma pobrać pobrać dane po czym porównać czy istnieje już rekord o takich samych wartościach (imię i nazwisko autora w tabeli "autor") jeżeli tak to wprowadzić dane insertem do tabeli "książki" natomiast jeśli nie utworzyć nowy rekord w tabeli "autor" z podanymi danymi a następnie wprowadzić dane insertem do tabeli "książki"

za wszelką pomoc dziękuje wink.gif
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 21.08.2025 - 06:06