DELIMITER | CREATE TRIGGER resolve_cidr BEFORE INSERT ON mail_hostlists FOR EACH ROW BEGIN SET NEW.start_addr = INET_ATON(LEFT(NEW.cidr,LOCATE("/",NEW.cidr)-1)); SET NEW.end_addr = (INET_ATON(LEFT(NEW.cidr,LOCATE("/",NEW.cidr)-1)) | (4294967295 >> SUBSTRING(NEW.cidr,LOCATE("/",NEW.cidr)+1))); END; | DELIMITER ; mysql> DELIMITER | mysql> mysql> CREATE TRIGGER resolve_cidr BEFORE INSERT ON mail_hostlists -> FOR EACH ROW BEGIN -> SET NEW.start_addr = INET_ATON(LEFT(NEW.cidr,LOCATE("/",NEW.cidr)-1)); -> SET NEW.end_addr = (INET_ATON(LEFT(NEW.cidr,LOCATE("/",NEW.cidr)-1)) | (4294967295 >> SUBSTRING(NEW.cidr,LOCATE("/",NEW.cidr)+1))); 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 '' at line 4 -> END; -> | 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 '4294967295 >> SUBSTRING(NEW.cidr,LOCATE("/",NEW.cidr)+1))); END' at line 1 mysql> mysql> DELIMITER ;