MySQL: How do I use delimiters in triggers?

后端 未结 3 1989
Happy的楠姐
Happy的楠姐 2020-12-07 06:28

Someone told me that I need to use a delimiter in my trigger. I\'m looking at the MySQL manual page, and I\'m finding it in the example; however, it\'s not in the generic d

3条回答
  •  萌比男神i
    2020-12-07 07:00

    The UPDATE query you're running inside the trigger is an update query like any other, except that it's running within the trigger. Right now you're updating ALL records and incrementing the points field. If you want to limit it to only a particular record(s) that are related to whatever caused the trigger to fire, you'll have to add that to the UPDATE query's WHERE clause.

    MySQL has on way of knowing what your intent with the UPDATE query is, just as it has no idea what you really mean when doing a normal insert/update/delete - it's up to you specify exactly what must be done.

    In the case of an INSERT trigger, there usually isn't an "old" record to refer to, as you're creating something brand new (unless it's an insert ... on duplicate key update situation).

提交回复
热议问题