Создать триггер на MySQL - PullRequest
0 голосов
/ 20 марта 2019

Я видел несколько примеров создания триггеров здесь, но ни один из них я не могу напрямую связать с моей ситуацией. У меня есть следующие две таблицы:

CREATE TABLE product_item (
product_item_id INT(10) NOT NULL AUTO_INCREMENT,
product_item_name varchar(100) NOT NULL,
product_item_description varchar(100),
product_item_price DECIMAL(6,2),
product_type_id INT(10) NOT NULL,
product_supplier_id INT(10) NOT NULL,
CONSTRAINT product_itempk PRIMARY KEY (product_item_id),
CONSTRAINT product_item_product_typefk FOREIGN KEY (product_type_id) REFERENCES product_type (product_type_id),
CONSTRAINT product_item_supplierfk FOREIGN KEY (product_supplier_id) REFERENCES supplier (supplier_id)
);

CREATE TABLE customer_order_item (
customer_order_id INT(10) NOT NULL,
product_item_id INT(10) NOT NULL,
customer_order_item_price DECIMAL(6,2),
customer_order_item_quantity INT(5) NOT NULL,
CONSTRAINT customer_order_item_orderpk PRIMARY KEY (customer_order_id, product_item_id),
CONSTRAINT customer_order_item_orderfk FOREIGN KEY (customer_order_id) REFERENCES customer_order (order_id),
CONSTRAINT customer_order_item_productfk FOREIGN KEY (product_item_id) REFERENCES product_item (product_item_id)
);

Когда добавляется customer_order_item , я хочу получить customer_order_item_price из поля product_item_price в таблице product_item .

Я ищу что-то вроде:

  CREATE TRIGGER after_customer_order_item_insert
  AFTER INSERT ON customer_order_item
  BEGIN
  SET customer_order_item.customer_order_item_price = product_item .product_item_price
  WHERE 
  END

Я совершенно новичок в SQL, так что извините, вопрос наивный, но я до сих пор не могу понять.

Заранее спасибо.

...