以下ctl文件代码由标签分隔,所以我正在尝试下面的代码但显示:
由于数据错误,未加载5行。 它没有通过sql loader
加载到表中for($i=0;$i<$count;$i++){
$name= htmlentities($_POST['name'][$i]);
$phone= htmlentities($_POST['phone'][$i]);
$email= htmlentities($_POST['email'][$i]);
$query = $db->prepare("INSERT INTO `data`(`name`,`phone`,`email`)
VALUES (:name,:phone,:email)");
$query->execute();
}
header("location: index.php");
我的输入文件如下:
OPTIONS ( ERRORS=405737, SILENT=(ERRORS))
LOAD DATA
INFILE '/home/maliprat/public/RDDH_Extracts/AMER_20171215_EQUITY_ISSUE.dat'
APPEND
INTO TABLE ENCORE_APP.TEMP_RDDH_RAW_DATA_ISSUE
**FIELDS TERMINATED BY X'9'**
TRAILING NULLCOLS
(
ISSUE_UBSID "TRIM(:ISSUE_UBSID)",
TEST2 FILLER,
ISSUE_ASSETCLASS "TRIM(:ISSUE_ASSETCLASS)",
ISSUE_ASSETTYPE "TRIM(:ISSUE_ASSETTYPE)",
ISSUE_SECURITYTYPE "TRIM(:ISSUE_SECURITYTYPE)",
答案 0 :(得分:0)
找到问题的关键在于日志&amp;坏文件..使用如下语法执行sqlldr命令时:
sqlldr user/pass control=ctlfilepath/ctlfilename log=logfilepath/logfilename bad=badfilepath/badfilename
在这种情况下,日志文件将包含错误的描述&amp;坏文件将包含被拒绝的行。
有关详细信息,请尝试在终端输入sqlldr
,然后按Enter键查看并了解所有选项的说明。
您也可以查看document。