当前位置:数据库 > SQLServer >>

sql loader导入数据时的问题

sql loader导入数据时的问题
 
在使用oracle sql loader 工具导入数据时遇到的问题,具体的shell脚本如下:
 
01
#!/bin/bash
02
 
03
 
04
 export LANG=zh_CN.GBK
05
 export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK
06
 export ORACLE_BASE=/u01/oracle
07
 export ORACLE_HOME=/u01/oracle
08
 
09
 
10
 export PATH="$PATH:$ORACLE_BASE:$ORACLE_HOME:$ORACLE_SID:
11
 
12
$ORACLE_HOME/bin"
13
 
14
 
15
 SQLLDR="/u01/oracle/bin/sqlldr"
16
 ORACLE_USER="username"
17
 ORACLE_PWD="password"
18
 ORACLE_SID="orcl"
19
 
20
 
21
 CTL_FILE="/home/***/test/test.ctl"
22
 DATA_FILE="/home/***/test/test.txt"
23
 LOG_FILE="/home/***/test/test.log"
24
 BAD_FILE="/home/***/test/test.bad"
25
 
26
 
27
 "$SQLLDR" "$ORACLE_USER"/"$ORACLE_PWD"@"$ORACLE_SID"
28
 
29
control="$CTL_FILE"  data="$DATA_FILE" direct=true BAD="$BAD_FILE"
30
 
31
log="$LOG_FILE"  2>&1
 
 
问题一:
 
SQL*Loader-704: Internal error: ulconnect: OCIServerAttach [0]
 
ORA-12532: TNS:invalid argument
 
原因:数据库sid路径问题
 
解决方法:将Oracle的sid配置为localhost:端口号/sid名称 ,必须明确指明数据库的地址和端口号
 
问题二:
 
ORA-12705: Cannot access NLS data files or invalid environment specified  
 
原因:NLS_LANG配置不正确,可能是NLS_LANG不存在或者书写错误,由于本人在
 
NLS_LANG=AMERICAN_AMERICA.ZHS16GBK中将AMERICAN_AMERICA.ZHS16GBK
 
写成AMERICAN_AMERICAN.ZHS16GBK,才报以上错误
 
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,