What is the purpose of the "external" data types for the ORACLE_LOADER driver? It's possible to specify, for example, FLOAT EXTERNAL or INTEGER EXTERNAL, meaning that the column type is a float or integer but should be processed as a string of characters. I see how that's useful for overall correctness, but it doesn't seem to change the logical behavior versus simply specifying CHAR. Either way, the data will be converted when interacting with the database where the corresponding type is NUMBER. Does it improve performance somehow? Otherwise, why use it?
Relatedly, why is there an option for FLOAT EXTERNAL but not DOUBLE EXTERNAL?