добрый день,
есть таблица `products` с полем `id` (AUTO_INCREMENT) и полем `sku` (`sku` int(7) unsigned zerofill DEFAULT NULL), которое имеет вид типа 0000001, 0000002 и так далее, где цифра после нулей соответствует `id`. `sku`- это внутренний код магазина. конечно есть возможность программно создавать этот код примерно так:
$sku = sprintf('%07d', $row['id']);, но не проще ли создать триггер для поля `sku` таблицы `products`, который бы автоматически на INSERT продукта создавал бы нужное форматирование от поля `id`?
если создать триггер, то мои рассуждения таковы:
1. открыл таблицу `products`
2. открыл вкладку Триггеры
3. Добавить триггер -> открылась форма, заполнить поля
название - added_sku
таблица - products
время - BEFORE
событие - INSERT
определение : root@localhost (устанавливается при пустом поле автоматически)
BEGIN
?????????????????????????????
END
определитель - оставить пустым
4. нажать кнопку OK
вопрос :
1. как правильно создать триггер (каков будет сам код триггера) для поля `sku` таблицы `products`?
2. как будет вести себя триггер если в дальнейшем обновлять отдельные поля внесенных в таблицу продуктов?
а. мешать обновлению?
б. никак не влиять на дальнейшие обновления?
спасибо за помощь