我的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")
但我收到错误:
无效的绑定变量
答案 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.