请教sqlldr的导入问题

[复制链接]
查看11 | 回复5 | 2008-2-13 12:43:03 | 显示全部楼层 |阅读模式
在使用sqlldr导入工具时候,如何插入系统时间,问题是这样的
demo 表 2个字段1手机号码 2日期
表定义两字段都不能为空,not null
导入文件格式
13923344533
12348023023
13938322233
.......................
.......................
如何写这个ctl文件 ,我不知道如何插入系统时间,光导入手机号码 报错,说demo.time 不能为空,请教下怎么写?
回复

使用道具 举报

千问 | 2008-2-13 12:43:03 | 显示全部楼层
把demo表中的日期字段的缺省值设为sysdate,sqlldr导入的时候,只导入手机号码字段即可.
ctl文件格式大概如下:
load data          
  infile '??.txt'     
  append into table memofields terminated by ','
  (手机号码)
回复

使用道具 举报

千问 | 2008-2-13 12:43:03 | 显示全部楼层


楼上的你这个方法是可以的,可是现网数据库我们是无法改变表结构的。 因为这个表是某些进程往里面写日期,不是系统时期,所以也不能写缺省值sysdate ,只能在sqlldr方面下手如何导入,又可以回避null的问题????
谢谢大家


回复

使用道具 举报

千问 | 2008-2-13 12:43:03 | 显示全部楼层
up
回复

使用道具 举报

千问 | 2008-2-13 12:43:03 | 显示全部楼层
load data          
  infile '??.txt'     
  append into table memo
  (手机号码 position(1:11),
日期 "sysdate" ) 
这个应该可以.
回复

使用道具 举报

千问 | 2008-2-13 12:43:03 | 显示全部楼层
谢谢 楼上兄弟 我测试过了可以,解决问题了
关键是"sysdate"我试了单引号,试了constant,试了default 就是没有想到用双引号来表达,学了一招,再次感谢!


回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行