Обновить одно поле при изменении другого - MySQL
Формулировка задачи:
Как автоматически обновить одно поле при изменении другого?
Требуется копировать данные поля `smsLimit` при его обновлении в smsFree (как минимум), и "как максимум" - по условию if ( `smsLimit`<> 0), и наконец "как сверх задача" - if ( `smsLimit` == 0) SET (smsFree) VALUES (100000000') else SET smsFree = smsLimit .
Как это сделать средствами MySQL?
CREATE TABLE IF NOT EXISTS `astSMSdevices` ( `devID` int(10) NOT NULL, `smsdevice` varchar(50) NOT NULL, `gateType` varchar(50) NOT NULL, `portOnGate` varchar(10) NOT NULL, `group` int(11) NOT NULL DEFAULT '0', `priorInGroup` int(11) NOT NULL DEFAULT '0', `smsLimit` int(10) NOT NULL DEFAULT '0', `smsFree` int(12) NOT NULL DEFAULT '100000000', `doOFFatLImit` int(11) NOT NULL DEFAULT '0', `newdevIDatLimit` int(11) NOT NULL DEFAULT '0', `timeToLimReset` timestamp NULL DEFAULT NULL, `isInUse` int(11) NOT NULL DEFAULT '0', `isLineOK` int(11) NOT NULL DEFAULT '1' ) ENGINE=MyISAM AUTO_INCREMENT=3 DEFAULT CHARSET=utf8
Решение задачи: «Обновить одно поле при изменении другого»
textual
Листинг программы
ELSE IF NEW.smsLimit <> OLD.smsLimit THEN SET NEW.smsFree=NEW.smsLimit;
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д