文档解释
ORA-26019: Column string in table string of type string not supported by direct path
Cause: The Specified column of SQL column type %s is not supported by the direct path loader.
Action: If the column is NULLable, remove it from the control file description. Then it will be loaded as a NULL.
ORA-26019错误表明,直接路径API不支持列上指定表中指定的数据类型。只有在某些表中存储特定类型的数据时,这些数据才支持使用直接路径API加载。
ORACLE的官方解释是,ORA-26019: “ DIRECT_PATH不支持列'[column]’在表'[table]’中的数据类型'[type]’”。
常见案例有:
1. 尝试直接从使用多byte字符集(比如utf-8或utf-16)创建的源数据文件中加载数据到ORACLE中;
2. 尝试从具有多byte字符集(utf-8或utf-16)后缀的文件中直接加载到ORACLE中;
3. 尝试从NCHAR或NVARCHAR字段或NCLOB数据类型中直接读取数据。
一般处理方法及步骤
1. 确保源数据文件以US7ASCII,WE8MSWIN1252,WE8ISO8859P15或AL32UTF8字符集编码;
2. 若要从NCHAR或NVARCHAR字段或NCLOB数据类型中读取数据,可以考虑使用CTAS或ATAS来转换数据类型;
3. 使用SQL :Create Table As Select(CTAS)来替换Direct Path API;
4. 如果需要读取某个特定表中的数据,那么先创建一个复制表,然后从复制表中读取数据;
5. 尝试将数据先导出到具有US7ASCII,WE8MSWIN1252,WE8ISO8859P15或AL32UTF8字符集的文件,然后再导入ORACLE。