使用sqlloader在表中加载CSV文件

时间:2013-10-13 03:44:30

标签: mysql csv sql-loader

我的CSV文件有两列id_a和id_b,但我需要再插入4列; ie. emp_sal_a, emp_sal_b, emp_dept_a, emp_dept_b using sqlldr。所以我当前的控制文件看起来像:

load data
infile '/home/.../employee.txt'
 into table employee
 fields terminated by ","
 ( id_a, id_b, 
emp_sal_a ":id_a+1000", emp_sal_b "id_b+1000", emp_dept_a "10", emp_dept_b "20")

但我收到错误:

  

无效的绑定变量

1 个答案:

答案 0 :(得分:0)

来自MySQL Load Data Ref
注意:搜索“(”字符,它是页面上的第35个实例

  

SET子句中的用户变量可以通过多种方式使用。下面的示例直接使用第一个输入列作为t1.column1的值,并将第二个输入列分配给在用于t1.column2的值之前经过除法运算的用户变量:

LOAD DATA INFILE 'file.txt'
INTO TABLE t1
(column1, @var1)
SET column2 = @var1/100; 

@ var1是要运行操作的变量的名称,而您正在执行的操作是将column2上的SET调用为等于@ var1 / 100.