-- Query 2
-- Funkcija jauna lietotāja izveidei
DELIMITER $$

CREATE FUNCTION fn_create_user(
    p_username VARCHAR(50), -- Lietotājvārds
    p_password VARCHAR(255), -- Parole
    p_email VARCHAR(100)     -- E-pasts
) RETURNS INT
BEGIN
    DECLARE new_id INT; -- Mainīgais jaunajam lietotāja ID

    -- Ievieto jaunu lietotāju ar šifrētu paroli
    INSERT INTO users(username, password_hash, email)
    VALUES (p_username, SHA2(p_password,256), p_email);

    -- Iegūst pēdējā ievietotā lietotāja ID
    SET new_id = LAST_INSERT_ID();

    -- Atgriež jaunā lietotāja ID
    RETURN new_id;
END$$

DELIMITER ;
