I'm having some trouble writing this trigger and wasn't sure what I'm doing wrong. My goal is after a row has been added to tcphdr it will pull data from several other tables based on the NEW rows event.cid and event.timestamp and insert it into acid_event. However I'm not sure how to tell the WHERE portion what the NEW cid and timestamp is.
DELIMITER | CREATE TRIGGER tcphdr_trig AFTER INSERT ON tcphdr FOR EACH ROW BEGIN INSERT INTO acid_event (sid, cid, signature, sig_name, sig_class_id, sig_priority, timestamp, ip_src, ip_dst, ip_proto, layer4_sport, layer4_dport) SELECT event.sid as sid, event.cid as cid, signature, sig_priority, sig_class_id, timestamp, ip_src, ip_dst, ip_proto, tcp_sport as layer4_sport, tcp_dport as layer4_dport FROM event INNER JOIN signature ON (signature = signature.sig_id) INNER JOIN iphdr ON (event.sid=iphdr.sid AND event.cid=iphdr.cid) LEFT JOIN tcphdr ON (event.sid=tcphdr.sid AND event.cid=tcphdr.cid) WHERE event.cid = NEW.cid AND event.timestamp = NEW.timestamp; END; |ERROR 1054 (42S22): Unknown column 'timestamp' in 'NEW' mysql> delimiter ; mysql> show columns from event; +-----------+------------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +-----------+------------------+------+-----+---------+-------+ | sid | int(10) unsigned | NO | PRI | | | | cid | int(10) unsigned | NO | PRI | | | | signature | int(10) unsigned | NO | MUL | | | | timestamp | datetime | NO | PRI | | | +-----------+------------------+------+-----+---------+-------+ 4 rows in set (0.03 sec) mysql> show columns from acid_event; +--------------+------------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +--------------+------------------+------+-----+---------+-------+ | sid | int(10) unsigned | NO | PRI | | | | cid | int(10) unsigned | NO | PRI | | | | signature | int(10) unsigned | NO | MUL | | | | sig_name | varchar(255) | YES | MUL | | | | sig_class_id | int(10) unsigned | YES | MUL | | | | sig_priority | int(10) unsigned | YES | MUL | | | | timestamp | datetime | NO | PRI | | | | ip_src | int(10) unsigned | YES | MUL | | | | ip_dst | int(10) unsigned | YES | MUL | | | | ip_proto | int(11) | YES | MUL | | | | layer4_sport | int(10) unsigned | YES | MUL | | | | layer4_dport | int(10) unsigned | YES | MUL | | | +--------------+------------------+------+-----+---------+-------+ 12 rows in set (0.03 sec) mysql> show columns from signature; +--------------+------------------+------+-----+---------+----------------+ | Field | Type | Null | Key | Default | Extra | +--------------+------------------+------+-----+---------+----------------+ | sig_id | int(10) unsigned | NO | PRI | | auto_increment | | sig_name | varchar(255) | NO | MUL | | | | sig_class_id | int(10) unsigned | NO | MUL | | | | sig_priority | int(10) unsigned | YES | | | | | sig_rev | int(10) unsigned | YES | | | | | sig_sid | int(10) unsigned | YES | | | | +--------------+------------------+------+-----+---------+----------------+ 6 rows in set (0.02 sec) mysql> show columns from iphdr; +----------+----------------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +----------+----------------------+------+-----+---------+-------+ | sid | int(10) unsigned | NO | PRI | | | | cid | int(10) unsigned | NO | PRI | | | | ip_src | int(10) unsigned | NO | MUL | | | | ip_dst | int(10) unsigned | NO | MUL | | | | ip_ver | tinyint(3) unsigned | YES | | | | | ip_hlen | tinyint(3) unsigned | YES | | | | | ip_tos | tinyint(3) unsigned | YES | | | | | ip_len | smallint(5) unsigned | YES | | | | | ip_id | smallint(5) unsigned | YES | | | | | ip_flags | tinyint(3) unsigned | YES | | | | | ip_off | smallint(5) unsigned | YES | | | | | ip_ttl | tinyint(3) unsigned | YES | | | | | ip_proto | tinyint(3) unsigned | NO | | | | | ip_csum | smallint(5) unsigned | YES | | | | +----------+----------------------+------+-----+---------+-------+ 14 rows in set (0.03 sec) mysql> show columns from tcphdr; +-----------+----------------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +-----------+----------------------+------+-----+---------+-------+ | sid | int(10) unsigned | NO | PRI | | | | cid | int(10) unsigned | NO | PRI | | | | tcp_sport | smallint(5) unsigned | NO | MUL | | | | tcp_dport | smallint(5) unsigned | NO | MUL | | | | tcp_seq | int(10) unsigned | YES | | | | | tcp_ack | int(10) unsigned | YES | | | | | tcp_off | tinyint(3) unsigned | YES | | | | | tcp_res | tinyint(3) unsigned | YES | | | | | tcp_flags | tinyint(3) unsigned | NO | MUL | | | | tcp_win | smallint(5) unsigned | YES | | | | | tcp_csum | smallint(5) unsigned | YES | | | | | tcp_urp | smallint(5) unsigned | YES | | | | +-----------+----------------------+------+-----+---------+-------+ 12 rows in set (1.39 sec) -- MySQL General Mailing List For list archives: http://lists.mysql.com/mysql To unsubscribe: http://lists.mysql.com/[EMAIL PROTECTED]