0
これは私が書き込むトリガです。mysql:ERROR 1064(42000)in trigger
DELIMITER //
create trigger after_insert_bid
after insert on Bid
for each row
when exists(
select *
from Item
where ItemID = new.ItemID)
begin
update Item set Item.currently = NEW.amount where Item.itemID = NEW.itemID;
end;//
DELIMITER ;
それはエラーがあります。
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'when exists(
SELECT *
FROM Item
WHERE ItemID = new.ItemID
)
begin
UPDATE Item SE' at line 4
mysql> end;
私は、MySQLに新しいですし、私はそれは簡単な質問ですけど、私は本当にエラーを発見する方法がわからない、ありがとう!
MySQLのバージョンは、あなたがアイテムIDだけで直接アイテムテーブルを更新項目テーブルに存在するかどうかをチェックする必要はありません5.1.73
このエラーが見つかりました。このマニュアルで指定されているものと構文の違いを確認しましたか? – tadman
私のバージョンは、mysql 5.1.73です。私はマニュアルでそれを見つけようとしましたが、うまくいきませんでした。 –
そこにはいつでも 'EXISTS'を実行することができないので、別の方法が必要です。 trigger_event *タイプが何であるかを見てください。 – tadman