列を持つmysqlテーブル「市場」があります
- open_time (日時),
- session_num (整数),
- 期間(整数)、
- end_time (日時)。
[open_time、session_num、duration] のいずれかが更新された場合に、close_time の値を自動的に計算して更新するトリガーを作成したいと考えています。
私が欲しいend_time = open_time + session_num * duration;
以下のようなトリガーを作成しました。
CREATE TRIGGER `update` BEFORE UPDATE ON `market`
FOR EACH ROW BEGIN
SET new.end_time = new.open_time + new.duration * new.session_num;
END
ただし、open_time を更新すると、次のエラーが発生します。
#1436 - Thread stack overrun: 13080 bytes used of a 131072 byte stack, and 128000 bytes needed. Use 'mysqld --thread_stack=#' to specify a bigger stack.
どうすれば解決できますか?ありがとう。