tmp.csv文件内容
#一 事件
事件序号 事件内容
1 发生一次警报
4 发生三次警报
#二 新闻
事件序号 事件内容
1 新闻事件发生一次
3 发生二次我想写个控制文件,导入到数据库event表中,event表中的字段:tdate(date),eventname(varchar2),
eventid(number),eventcontent(varchar)另外还有一个问题,就是csv文件中没有日期,但是我需要执行sqlldr时,把当前系统的日期给插入到数据库event表中我想要的结果:
tdate eventname eventid eventcontent
20120826 事件 1 发生一次警报
20120827 事件 4 发生三次警报
20120827 新闻 1 新闻事件发生一次
20120827 新闻 3 事件发生二次谢谢大家了。
#一 事件
事件序号 事件内容
1 发生一次警报
4 发生三次警报
#二 新闻
事件序号 事件内容
1 新闻事件发生一次
3 发生二次我想写个控制文件,导入到数据库event表中,event表中的字段:tdate(date),eventname(varchar2),
eventid(number),eventcontent(varchar)另外还有一个问题,就是csv文件中没有日期,但是我需要执行sqlldr时,把当前系统的日期给插入到数据库event表中我想要的结果:
tdate eventname eventid eventcontent
20120826 事件 1 发生一次警报
20120827 事件 4 发生三次警报
20120827 新闻 1 新闻事件发生一次
20120827 新闻 3 事件发生二次谢谢大家了。
解决方案 »
- oracle登录密码错误
- 怎么把2009-11-13 2:07:50这种格式的转成YYYY-MM-DD格式?
- 大家帮忙,sql如何优化.
- 请教一个关于sql左连接的效率问题
- 怎样查找某个时间点后更新过的表?
- 求救-这个SQL怎么写,24小时内结帖
- proc中使用游标的疑问,请指教
- 菜鸟问题,装了Develop是不是就不用装客户端了?
- 一个很简单的问题,Oracle数据库复制问题??各位兄弟帮一忙,小弟我搞不定了!!!
- 客户端登陆到Oracle Management Server时的错误!!!
- oracle数据库起不来了。。。nomount也起不来。。。。具体情况向下看
- DBConsole 启动不起来呢
我的源数据是手工输入的,我是不想在源数据输入时间,想的是在sqlldr到数据库中,能否取一个系统时间,把这个时间也插入到数据库中??????????????????????????
2. 修改控制文件 tdate "sysdate"
2种都可以
你好,修改控制文件tdate "sysdate"
是可以插入系统当前的时间的,但是有个问题
以下是ev.csv文件的内容:
应用条件,变化名称,变化原因
lll,333,ppppp
控制文件内容:
OPTIONS (skip=1)
load
INFILE 'ev.csv'
BADFILE 'ev.bad'
APPEND
INTO TABLE t_ev
fields terminated by ","
trailing nullcols
(
tdate "sysdate",
APPBG,
BGNAME,
BGREASON
)执行sqlldr后ev.csv的数据和系统时间插入到了表中,但是csv文件里的数据和数据库表里的数据顺序搞错了,下面为执行sqlldr后插入到数据库表里的数据
TDATE APPBG BGNAME BGREASON
2012/8/29 1:25:00 333 ppppp
结果是把csv文件里的第一个字段给弄没了,没有按顺序插入进去
正确的结果应该是这样,查看数据库的表t_ev:TDATE APPBG BGNAME BGREASON
2012/8/29 1:25:00 111 333 ppppp
请教下ctl文件怎么更改,谢谢啦!!!!!!
INFILE 'ev.csv'
BADFILE 'ev.bad'
APPEND
INTO TABLE t_ev
fields terminated by ","
trailing nullcols
(
APPBG,
BGNAME,
BGREASON,
tdate "sysdate"
)
谢谢啦,搞定了,,
但是不是很明白为什么把tdate写在最后就可以了,,,,sqlldr到数据库时没有按数据库表里的顺序插入数据??
数据库中表的结构
tdate date
appeg varchar2
bgname varchar2
bgreason varchar2
tdate "sysdate"
APPBG, position(:)
BGNAME,position(:)
BGREASON,position(:)
),这样应该就不会错了。
可以学学10g的这个sqlldr教程
http://docs.oracle.com/cd/B13789_01/server.101/b10825/ldr_cases.htm#i1007813