how to insert a row into multiple tables at once? If you do some tables related by an ID; what is the best way to ensure integrity is maintained in case an INSERT issue ?
That exactly what transactions are for. If any of the commands fail, the whole thing since START TRANSACTION is rolled back:
INSERT INTO sometable VALUES(NULL,'foo','bar');
INSERT INTO someothertable VALUES (LAST_INSERT_ID(),'baz');
you can not using transactions with MyISAM tables (you'll need the tables to use some engine that supports this, probably InnoDB).
This will not be inserted into the table (normally you'd have some branching, e.g. an IF):
INSERT INTO sometable VALUES(NULL,'data','somemoredata');
Caveat: SQL commands which change the database structure (e.g. CREATE,ALTER,DROP) cannot be rolled back!