You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Oracle命令行加载CSV至表无报错但表为空问题求助

问题描述

尝试通过命令行将CSV文件导入Oracle数据库的tmp_x表,执行以下语句后无报错,但表始终为空:

CREATE TABLE tmp_x (codice varchar(100), descrizione varchar(300), tipo varchar(100), macroarea varchar(100), includere varchar(100));

LOAD DATA INFILE '/home/-/Documenti/Tabelle_per_App/OK/REPARTI_modifiche.csv' into table tmp_x field terminated by ',' 
LINES TERMINATED BY ""
"" (codice, descrizione, tipo, @vmacroarea, includere) SET macroarea = NULLIF(@vmacroarea,'')

CSV示例数据如下:

CODICEDESCRIZIONETIPOMACROAREAINCLUDERE
C19COLLABORATORI COVID19INO
CCVCOVID COLLABORATORI VACCINATIENO
CETCONTROLLI ENDOSCOPIA TORACICAINO
D0800CardiologiaIMEDICASI
D0900Chirurgia GeneraleICHIRURGICASI

要求:仅通过命令行完成,禁止创建外部表。

排查与解决步骤

1. 修正换行符配置

你的LINES TERMINATED BY语法存在错误,Oracle SQL*Loader的换行符需根据系统正确指定:

  • Unix/Linux系统用'\n'
  • Windows系统用'\r\n'

修改后的LOAD语句:

LOAD DATA INFILE '/home/-/Documenti/Tabelle_per_App/OK/REPARTI_modifiche.csv' 
INTO TABLE tmp_x 
FIELDS TERMINATED BY ',' 
OPTIONALLY ENCLOSED BY '"' -- 若CSV字段含引号包裹需添加此句
LINES TERMINATED BY '\n' 
(codice, descrizione, tipo, @vmacroarea, includere) 
SET macroarea = NULLIF(@vmacroarea, '')

2. 检查文件权限与路径

  • 确保Oracle数据库进程拥有该CSV文件的读取权限
  • 替换路径中的-为实际用户名,确认路径准确(比如/home/your_user/Documenti/Tabelle_per_App/OK/REPARTI_modifiche.csv)
  • 在数据库服务器执行ls -l /home/-/Documenti/Tabelle_per_App/OK/REPARTI_modifiche.csv验证文件是否存在

3. 启用SQL*Loader日志排查

执行LOAD命令时添加日志参数,生成详细日志定位问题:

sqlldr username/password@database control=load_data.ctl log=load_data.log

其中load_data.ctl是包含LOAD语句的控制文件,日志会显示读取行数、跳过行数、错误详情等关键信息。

4. 处理CSV格式细节

  • 确认CSV中MACROAREA列的空值为纯空白字符串,而非空格或不可见字符
  • 若字段包含逗号,必须用引号包裹,此时需保留OPTIONALLY ENCLOSED BY '"'参数

5. 跳过CSV表头(若存在)

如果CSV文件第一行是表头,需添加SKIP 1跳过该行:

LOAD DATA INFILE '/home/-/Documenti/Tabelle_per_App/OK/REPARTI_modifiche.csv' 
INTO TABLE tmp_x 
FIELDS TERMINATED BY ',' 
LINES TERMINATED BY '\n' 
SKIP 1 -- 跳过CSV表头行
(codice, descrizione, tipo, @vmacroarea, includere) 
SET macroarea = NULLIF(@vmacroarea, '')

内容的提问来源于stack exchange,提问作者Denise Lavezzari

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.02 01:31:19