La mia domanda potrebbe essere semplice per te, se sei abituato a MySQL. Sono abituato a PostgreSQL SGBD e sto cercando di tradurre uno script PL/PgSQL in MySQL.Declare variabile Trigger MySQL
Ecco quello che ho:
delimiter //
CREATE TRIGGER pgl_new_user
AFTER INSERT ON users FOR EACH ROW
BEGIN
DECLARE m_user_team_id integer;
SELECT id INTO m_user_team_id FROM user_teams WHERE name = "pgl_reporters";
DECLARE m_projects_id integer;
DECLARE cur CURSOR FOR SELECT project_id FROM user_team_project_relationships WHERE user_team_id = m_user_team_id;
OPEN cur;
ins_loop: LOOP
FETCH cur INTO m_projects_id;
IF done THEN
LEAVE ins_loop;
END IF;
INSERT INTO users_projects (user_id, project_id, created_at, updated_at, project_access)
VALUES (NEW.id, m_projects_id, now(), now(), 20);
END LOOP;
CLOSE cur;
END//
Ma MySQL Workbench mi dà un errore su DECLARE m_projects_id
. Non capisco perché ho le stesse istruzioni due righe sopra ...
Qualche suggerimento?
MODIFICA: neubert ha risolto questo errore. Grazie.
Ma ancora, quando provo ad inserire nel utenti:
Error Code: 1329. No data - zero rows fetched, selected, or processed
Avete qualche idea? O meglio, sai come posso ottenere un messaggio di errore migliore?
Dai un'occhiata qui: http://dba.stackexchange.com/questions/25405/event-scheduler-no-data-zero-rows-fetched-selected-or-processed –