另外还有一个文件,也非常有用,叫做坏文件。如果我们在命令行工具中,指定了这个坏文件,则导入过程中,一些导入不成功的记录,则会被保存在这个坏文件中。所以,对于数据库管理员来说,这个文件有时候往往比数据导入日志文件更加的实用。所以,笔者建议,若企业对于数据导入的准确性要求比较高的画,则在使用SQL*Loader导入数据的时候,最好能够指定这个坏文件。这对于我们后续核对导入数据的准确性,具有很大的实用价值。
为了更好的使用这个导入工具,笔者有如下建议:
1、在制作数据文件的时候,需要注意原有数据表的限制。也就使说,数据文件中的记录必须符合数据表的一些约束条件,否则,不符合条件的数据将无法被导入。如需要考虑数据类型是否相符、字段长度有没有超过限制、有没有违反主键、外键的约束等等。只有符合这些约束的记录,才能够被成功的导入。否则的话,数据将无法被成功装载。为了避免这种情况,笔者建议再利用这个工具的时候,要指定“坏文件”。只有如此,数据库才能够再导入的过程中,把一些失败的记录写到我们指定的文件中,如此,我们就可以通过调整,然后把这些不符合规则的数据也装入到数据库中去。
2、前台应用程序在设计基础数据导入功能的时候,最好直接采用这个模块。因为这个模块跟Oracle数据库集成的比较好,能够最大限度的保障导入数据的准确性。而且,还可以节省很多前台的程序代码。不过有点值得可惜的是,SQL*Loader模块,现在是Oracle数据库独享的应用模块。也就是说,只有在Oracle数据库平台上的应用程序,才可以直接调用。若一个应用程序支持多个数据库平台的时候,则再设计这个数据导入功能的时候,需要注意了,这不像SQL语句那样的通用。