INSERT IGNORE
INSERT IGNORE INTO students … skips rows that would error (duplicate key, some data issues) and continues. You don’t get a hard fail. Useful for loading a file with a few duplicates.
You also won’t notice real problems. Check ROW_COUNT() / warnings. Prefer fixing duplicates over IGNORE in app code.
Trap — INSERT IGNORE hiding NOT NULL / type errors you should fix.
On the example next to this theory — INSERT IGNORE — iNSERT adds rows. List columns explicitly for clarity.
Exam tip
INSERT IGNORE skips duplicate-key rows. Don’t hide bugs with it.