sqlldr导入导出需要注意的问题

数据库连接串

不使用服务名

    db_srv="lxm/lxm@//192.168.150.37:1521/lltf"

使用服务名(好处在于远程、本地接皆可,但是如果是远程连接,那么要在tnsnames.ora中配置)

db_srv="lxm/lxm@LLTF"

shell脚本中注意事项

  • 在使用EOF时,注意第二个EOF要顶格写,前面后面都不能有字符,空格也不能有
  • 在进行数据运算的时候,可以使用(())进行运算

sqlldr的使用

  • 在使用sqlldr进行数据导入的时候,注意在生成控制文件的语句中,要使用与导出的数据一致的字段分隔符
  • 对于varchar2类型以及number类型的字段,后面可以不用类型修饰
  • 对于date类型的数据,根据所要导入的数据的格式进行修饰,比如CREATE_TIME date'yyyy-mm-dd hh24:mi:ss',
  • 对于timestamp类型的数据,可以通过desc <table_name>的方式,获取该字段的类型,然后再对该字段进行修饰(在生成控制文件的语句中使用),比如CREATE_TIME date'yyyy-mm-dd hh24:mi:ss'

附件

导入之前需要对用户进行授权

create user lxm identified by lxm;
grant connect, resource to lxm;
grant datapump_imp_full_database to lxm;

附件列表

     

    posted @ 2017-11-15 10:22  岳麓丹枫  阅读(559)  评论(0编辑  收藏  举报