Inferred column types
Ask for a CREATE TABLE and each column gets a type worked out from the values in it. A column stays INT until something does not fit, then widens to DECIMAL, then to VARCHAR sized from the longest value present.
The inference is a starting point, not a schema review. It sees the rows you typed, not the rows that will arrive next year, so widen anything you know will grow before you run it.
Escaping and safety
Single quotes are doubled, which is how SQL escapes them, so a value like O'Brien becomes 'O''Brien' and runs correctly.
These statements are not parameterised. That is fine for a one-off import you are running yourself. It is not a pattern to copy into application code that handles input from anyone else, where the query and the data must stay separate.