トリガーを見てください:
UPDATE Orders Set Paid =(Select SUM(Amount) From Payments AS p Where p.OrderID = Orders.ID),PayMethod =new.PayMethod WHere Orders.id = new.OrderID;
MySQLは、関数名と括弧の間のスペースを受け入れません(SQL_MODE =IGNORE_SPACEを設定していない限り、他の望ましくない副作用が発生します)
次のコマンドを実行して、SQL_MODE設定を確認できます。
SHOW GLOBAL VARIABLES LIKE 'SQL_MODE';
これに関するMySQLドキュメント:リンク
いくつかの例:
mysql> select sum(5);
+--------+
| sum(5) |
+--------+
| 5 |
+--------+
1 row in set (0.00 sec)
mysql> select sum (5);
ERROR 1305 (42000): FUNCTION sum does not exist
解決策:スペースを削除する
UPDATE Orders Set Paid =(Select SUM(Amount) From Payments AS p Where p.OrderID = Orders.ID),PayMethod =new.PayMethod WHere Orders.id = new.OrderID;