表结构
-- Create table
create table T_1299_DQ_HDM
(
F_ID NUMBER(11) not null,
F_CODE VARCHAR2(50) not null,
F_USERNUMBER NUMBER(11),
F_STATE VARCHAR2(1) default 0,
F_UPDATETIME VARCHAR2(17),
F_CHANNEL VARCHAR2(10),
F_WINNO NUMBER(11),
F_AREANUM VARCHAR2(20)
)
;
-- Create/Recreate primary, unique and foreign key constraints
alter table T_1299_DQ_HDM
add primary key (F_ID)
using index
tablespace USERS
pctfree 10
initrans 2
maxtrans 255
storage
(
initial 64K
minextents 1
maxextents unlimited
);
我只需要导入f_id 和f_code ,f_id根据序列递增
sqlldr 控制文件 :
Load DATA
CHARACTERSET ZHS16GBK
append INTO
TABLE t_1299_dq_hdm
fields terminated by "|" optionally enclosed by "."
trailing nullcols
(
F_CODE ,
F_ID "SEQ_1299_HDM.nextval"
)
我建了一个序列 SEQ_1299_HDM
这样我试过了, f_id取不到值 记录插入不了。。
导入的文本文件 txt 格式如下
12323
12312
12321
就是这样的 一行一条数据也就是要导入的f_code
------解决思路----------------------
参考
在sqlldr中如何使用序列(sequence)
------解决思路----------------------
sqlldr 导数据时,不用管他,在表上建一个 TR ,就比较方便了。具体的可以百度一下“ ORACLE 序列 自增”