新しい行を 2 つの異なるテーブルに挿入するトリガーを作成しようとしています (これは私の最初のトリガーであり、質問なので、慎重に)。
* 編集 *
ypercubeが答えるまで言及するのを忘れていたので、これを追加します。実際の使用では、これが使用されるテーブルには非常に多くの列があるため、すべての列名をリストすることを避けようとしています (私の設計ではなく、リファクタリングするには遅すぎます)。
*編集終了*
これが私がこれまでに持っているものです。
CREATE TABLE test_table (
id INT UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY,
message VARCHAR(255)
);
CREATE TABLE test_table_copy LIKE test_table;
DELIMITER $$
CREATE TRIGGER copy_test_table_data AFTER INSERT ON test_table
FOR EACH ROW
BEGIN
INSERT INTO test_table_copy SELECT * FROM NEW;
END;$$
DELIMITER ;
残念ながら、これはエラーになります。
mysql> INSERT INTO test_table VALUES (1, 'This is a message');
ERROR 1146 (4502): Table 'test_db.NEW' doesn't exist
何が問題なのかよくわかりませんが、テーブルデータが挿入されているとNEWが参照していると思いましたか?