Я не могу решить, что для [CREATE TRIGGER VALUE] необходимо вызвать содержимое таблицы и объединить его с текстом. Подробнее об ожидаемом результате см. В области результатов ниже.
В настоящее время код можно запустить за одно выполнение, создавая две строки в account_log, как и ожидалось.
Я отметил строку, которую, как я подозреваю, необходимо обновить с помощью [<- Требуется обновление?]. </p>
CREATE DATABASE IF NOT EXISTS test6;
USE test6;
DROP TABLE IF EXISTS account;
CREATE TABLE account
(
`id` CHAR(4) PRIMARY KEY,
`name` VARCHAR(25),
`price` DECIMAL(4, 2)
);
DROP TABLE IF EXISTS account_log;
CREATE TABLE account_log
(
`log_id` INTEGER PRIMARY KEY AUTO_INCREMENT,
`timestamp` TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
`description` VARCHAR(60)
);
DELETE FROM account;
INSERT INTO account
VALUES
('1', 'Adam', 10),
('2', 'Eva', 7)
;
DROP PROCEDURE IF EXISTS product_update;
DELIMITER ;;
CREATE PROCEDURE product_update()
BEGIN
UPDATE account
SET
name = "Ad"
WHERE
id = "1";
END
;;
DELIMITER ;
DROP TRIGGER IF EXISTS after_account_update;
CREATE TRIGGER after_account_update
AFTER UPDATE
ON account
FOR EACH ROW
INSERT INTO
account_log (`description`)
VALUES
('Update detected: Productid: [product-1]') -- <-- Needs update?
;
-- ----------------------------
-- Provoke triggers to execute.
-- ----------------------------
CALL product_update();
CALL product_update();
SELECT * FROM account_log;
Результаты:
Результат выглядит сейчас так:
(содержание описания - простой текст).
+--------+---------------------+-----------------------------------------+
| log_id | timestamp | description |
+--------+---------------------+-----------------------------------------+
| 1 | 2019-03-28 18:14:58 | Update detected: Productid: [product-1] |
| 2 | 2019-03-28 18:14:58 | Update detected: Productid: [product-1] |
+--------+---------------------+-----------------------------------------+
Мне нужен результат, чтобы выглядеть так
(где значения 1 и 2 в описании таблицы получены из учетной записи таблицы, столбец [id]):
+--------+---------------------+-----------------------------------------+
| log_id | timestamp | description |
+--------+---------------------+-----------------------------------------+
| 1 | 2019-03-28 18:14:58 | Update detected: Productid: 1 |
| 2 | 2019-03-28 18:14:58 | Update detected: Productid: 2 |
+--------+---------------------+-----------------------------------------+