Preserve values before choosing types
CSV stores fields, not a database schema. The default keeps every value as text, including dates, decimals and the word NULL. Optional inference scans the entire column and accepts only unquoted signed 64-bit integers or lowercase true/false. A quoted numeric value, leading zero, decimal or out-of-range integer keeps that whole column as text. Review the result against your target schema.
Empty strings and SQL NULL are different
By default, an empty CSV cell becomes an empty SQL string. The NULL option changes only unquoted empty cells. A quoted empty field stays an empty string, and spaces are never trimmed. Blank physical records are skipped. Ragged rows, duplicate headers and malformed quoting stop conversion instead of silently dropping values.