sqlldr 导入成功,但是数据库里没有值???在线等。。。

yinxiaoqi 2012-02-21 09:48:13
我使用的是 sqlldr 向orcale导入*.txt 数据,现在我使用这个命令以经执行成功了,
C:\Users\ThinkPad>sqlldr userid=ysbase/123123@YSBASE control=e:/append.ctl errors=5000 rows=1000000000
在根目录下也以经生成了 *.bad 文件了,但是我登录数据库查询了一下 居然没有任何的记录。。。晕了,,,,大虾帮帮忙啊,,,,在问一句 *.bad 这个文件是不是相当于一个 是志文件啊。?????
...全文
708 39 打赏 收藏 转发到动态 举报
写回复
用AI写文章
39 条回复
切换为时间正序
请发表友善的回复…
发表回复
yinxiaoqi 2012-02-22
  • 打赏
  • 举报
回复
谢谢大家的帮忙,以经搞定了,呵呵,,结帖给分哈。。
chen870201 2012-02-22
  • 打赏
  • 举报
回复
导入过程应该报错才对
mingchaoyan 2012-02-22
  • 打赏
  • 举报
回复
[Quote=引用 17 楼 yinxiaoqi 的回复:]

引用 14 楼 mingchaoyan 的回复:

lz 你把你的.log 日志文件贴出来


导出的日志是空的,晕。。。C:\Users\ThinkPad>sqlldr userid=ysbase/123123@YSBASE control=e:/append.ctl error
s=5000 rows=1000000000 data=e:\test.log
[/Quote]
日志的参数是 log不是 data ,data是数据文件名
mingchaoyan 2012-02-22
  • 打赏
  • 举报
回复
把数据文件123.txt 改成
1,2,3,4,5,6,7,8,2012-01-01 12:00:00.00,1,1,1,1,1,1,1,1,1,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2

然后就有了 如下(格式难看了点):
SQL> host sqlldr scott/tiger control='c:\append.ctl';

SQL*Loader: Release 10.2.0.1.0 - Production on 星期三 2月 22 09:27:32 2012

Copyright (c) 1982, 2005, Oracle. All rights reserved.

达到提交点 - 逻辑记录计数 1

SQL> select * from DEFINE_GROUP_SET;

GROUPT GROUPCODE GROUPNAME
G
------ ------------------------------ ------------------------------------------
------------------ -
D
-
NOTE
--------------------------------------------------------------------------------
--------------------
ID CREATOR_ID CREATE_TIME COSTCENTERCODE
------------------------------------ ---------- -------------- -----------------
-------------
BUSINESSTYPECODE P TABLECOLUMN
------------------------------ - ----------------------------------------
PARMA02
--------------------------------------------------------------------------------
--------------------
PARMA03
--------------------------------------------------------------------------------
--------------------
PARAM04 P GROUPTABLE
---------------------------------------- - -------------------------------------
---
USERTABLE RPTC R R
---------------------------------------- ---- - -
SUBWHERE
--------------------------------------------------------------------------------
--------------------
R GROUPROOTCODE REALCOLUMNNAME01
- ------------------------------ -----------------------------------------------
---
REALCOLUMNNAME02
--------------------------------------------------
REALCOLUMNNAME03
--------------------------------------------------
REALCOLUMNNAME04
--------------------------------------------------
REALCOLUMNNAME05
--------------------------------------------------
REALCOLUMNCODE01
--------------------------------------------------
REALCOLUMNCODE02
--------------------------------------------------
REALCOLUMNCODE03
--------------------------------------------------
REALCOLUMNCODE04
--------------------------------------------------
REALCOLUMNCODE05
--------------------------------------------------
BUDGETCOLUMNNAME01
--------------------------------------------------
BUDGETCOLUMNNAME02
--------------------------------------------------
BUDGETCOLUMNNAME03
--------------------------------------------------
BUDGETCOLUMNNAME04
--------------------------------------------------
BUDGETCOLUMNNAME05
--------------------------------------------------
BUDGETCOLUMNCODE01
--------------------------------------------------
BUDGETCOLUMNCODE02
--------------------------------------------------
BUDGETCOLUMNCODE03
--------------------------------------------------
BUDGETCOLUMNCODE04
--------------------------------------------------
BUDGETCOLUMNCODE05
--------------------------------------------------
ITEMCODE01
--------------------------------------------------
ITEMCODE02
--------------------------------------------------
ITEMCODE03
--------------------------------------------------
ITEMCODE04
--------------------------------------------------
ITEMCODE05 PREFIXCONSTANTCOLUMN01
-------------------------------------------------- -----------------------------
-
INFIXCONSTANTCOLUMN01 SUFFIXCONSTANTCOLUMN01 SUFFIXCONSTANTCOLU
MN02 R D I
------------------------------ ------------------------------ ------------------
------------ - - -
1 2 3
4
5
6
7 8 01-1月 -12 1
1 1 1
1
1
1 1 1
1 2 2 2
2
2 2 2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2 2
2 2 2
2 2 2


SQL>





mingchaoyan 2012-02-22
  • 打赏
  • 举报
回复
lz 成功了吗 照你如下的数据和表结构是不会成功的 因为有个 PARAM01 varchar2 (1) null, 长度是1 你却在插入两位数 你说 能成功吗
1,2,3,4,5,6,7,8,2012-01-01 12:00:00.00,10,11,12,13,14,15,16,17,18,19,20,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22
yinxiaoqi 2012-02-22
  • 打赏
  • 举报
回复
[Quote=引用 34 楼 luiseradl 的回复:]

sqlldr不会报错,而是生成*.bad文件,把没有导入的数据存储在这个文件中。
原因就是格式不对。
[/Quote]
就是我的txt格式不对吗,,数据库是sybase用PB导出的
我心飞翔 2012-02-22
  • 打赏
  • 举报
回复
sqlldr不会报错,而是生成*.bad文件,把没有导入的数据存储在这个文件中。
原因就是格式不对。
yinxiaoqi 2012-02-21
  • 打赏
  • 举报
回复
我心飞翔 2012-02-21
  • 打赏
  • 举报
回复
后面有的列还要求not null,而txt文件中没有提供值。
yinxiaoqi 2012-02-21
  • 打赏
  • 举报
回复

我的这个也成功了啊,,数据库就是没有这条数据,,这是为什么呢,,服了
我心飞翔 2012-02-21
  • 打赏
  • 举报
回复


修改了表的定义

CREATE TABLE DEFINE_GROUP_SET(
GROUPTYPECODE char (6) null,
GROUPCODE varchar2 (30) null,
GROUPNAME varchar2 (60) NULL);
我心飞翔 2012-02-21
  • 打赏
  • 举报
回复
就是数据的格式不正确。
实测的ctl文件,已经修改成我的实际位置

load data
infile 'f:\123.txt'
insert into table DEFINE_GROUP_SET
fields terminated by ','
(
GROUPTYPECODE,
GROUPCODE,
GROUPNAME
)


123.txt

000002,0101,产量商品量


yinxiaoqi 2012-02-21
  • 打赏
  • 举报
回复
我的txt和ctl设置一样的了,执行命令的时候也出现了 达到提交点 - 逻辑记录计数 1
但是在 数据库里面就是 没有这条记录,晕死了。。。
txt
1,2,3,4,5,6,7,8,2012-01-01 12:00:00.00,10,11,12,13,14,15,16,17,18,19,20,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22
ctl
load data
infile 'e:/456.txt'
insert into table DEFINE_GROUP_SET
fields terminated by ','
(GROUPTYPECODE,
GROUPCODE,
GROUPNAME,
GRADE,
DETAIL,
NOTE,
ID,
CREATOR_ID,
CREATE_TIME "to_timestamp(:CREATE_TIME,'yyyy-MM-dd hh24:mi:ss.ff3')",
COSTCENTERCODE,
BUSINESSTYPECODE,
PARAM01,
TABLECOLUMN,
PARMA02,
PARMA03,
PARAM04,
PARAM05,
GROUPTABLE,
USERTABLE,
RPTCOLWDITH,
RPTROWTOTAL,
RPTCOLTOTAL,
SUBWHERE,
RPTCOLSUM,
GROUPROOTCODE,
REALCOLUMNNAME01,
REALCOLUMNNAME02,
REALCOLUMNNAME03,
REALCOLUMNNAME04,
REALCOLUMNNAME05,
REALCOLUMNCODE01,
REALCOLUMNCODE02,
REALCOLUMNCODE03,
REALCOLUMNCODE04,
REALCOLUMNCODE05,
BUDGETCOLUMNNAME01,
BUDGETCOLUMNNAME02,
BUDGETCOLUMNNAME03,
BUDGETCOLUMNNAME04,
BUDGETCOLUMNNAME05,
BUDGETCOLUMNCODE01,
BUDGETCOLUMNCODE02,
BUDGETCOLUMNCODE03,
BUDGETCOLUMNCODE04,
BUDGETCOLUMNCODE05,
ITEMCODE01,
ITEMCODE02,
ITEMCODE03,
ITEMCODE04,
ITEMCODE05,
PREFIXCONSTANTCOLUMN01,
INFIXCONSTANTCOLUMN01,
SUFFIXCONSTANTCOLUMN01,
SUFFIXCONSTANTCOLUMN02,
RELAMODEL,
DATASOUCE,
ISESTIMATE
)
yinxiaoqi 2012-02-21
  • 打赏
  • 举报
回复
[Quote=引用 25 楼 luiseradl 的回复:]

都是空,也需要加上,,,,,,,一堆逗号。
[/Quote]

那我估计就是 我和txt的格式的问题 了,谢谢啦,,我在看看
我心飞翔 2012-02-21
  • 打赏
  • 举报
回复
都是空,也需要加上,,,,,,,一堆逗号。
yinxiaoqi 2012-02-21
  • 打赏
  • 举报
回复
[Quote=引用 21 楼 luiseradl 的回复:]

再有ctl文件中提供的列为64列,而实际数据为十几列,也不对应啊。
[/Quote]

123.txt 数据是有的,后面的都 是空的,
我心飞翔 2012-02-21
  • 打赏
  • 举报
回复
注意:date和data的区别
mingchaoyan 2012-02-21
  • 打赏
  • 举报
回复
[Quote=引用 20 楼 luiseradl 的回复:]

create_time为创建时间,应该是DATE类型(即日期类型)
data是啥类型啊。
[/Quote]
这个就按 date改好了 难不成data是他自定义的类型?


刘哥加油 ,我要回去了 11点寝室关门
lz好运


明早再来看 这个我做过实验的
我心飞翔 2012-02-21
  • 打赏
  • 举报
回复
再有ctl文件中提供的列为64列,而实际数据为十几列,也不对应啊。
我心飞翔 2012-02-21
  • 打赏
  • 举报
回复
create_time为创建时间,应该是DATE类型(即日期类型)
data是啥类型啊。

加载更多回复(19)

17,377

社区成员

发帖
与我相关
我的任务
社区描述
Oracle 基础和管理
社区管理员
  • 基础和管理社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧