Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Mysql trigger is not working

Tags:

mysql

triggers

I've created following trigger but it not executing after inserting data

DELIMITER //
  CREATE TRIGGER sale_after_insert
AFTER INSERT
   ON ano_sale_join
FOR EACH ROW
 BEGIN
    INSERT INTO ano_sale_join.database_inventory (sale_id) values (NEW.sale_id);
    INSERT INTO ano_sale_join.database_inventory (sales_prod_id) values (NEW.sales_prod_id);
  END//
DELIMITER;
like image 821
Gajanan Gadam Avatar asked Feb 25 '26 11:02

Gajanan Gadam


1 Answers

You have a wrong reference of database and table in the statements. They got swapped.

This code block is wrong:

INSERT INTO ano_sale_join.database_inventory (sale_id) values (NEW.sale_id);
INSERT INTO ano_sale_join.database_inventory (sales_prod_id) values (NEW.sales_prod_id);

Change them as:

INSERT INTO database_inventory.ano_sale_join(sale_id) values (NEW.sale_id);
INSERT INTO database_inventory.ano_sale_join(sales_prod_id) values (NEW.sales_prod_id);

Refer to:

  • Create Trigger Syntax
like image 106
Ravinder Reddy Avatar answered Feb 28 '26 01:02

Ravinder Reddy