公司实习后最后出个这样的问题,要求用oracle的jobs来实现
哎,本人对于oracle完全是个新手啊,对jobs完全不了解!求各位大侠帮下忙啊,谢谢了
啊啊 ~不然要被炒了,我的命运把握在你们的手中! oracle表A结构如下且表中如果有以下三条记录:
Mobile 用户号码 InTime 操作时间 Flag 是否已生成日志(默认值为0) BillType 操作类型(默认值为10 允许输入20或100)
13637401414 2008-01-01 23:53:01 0 10
13637401414 2008-01-02 10:22:01 0 20
13637401414 2008-01-03 17:26:01 0 100
每15分钟扫描一次A表将这15分钟内产生的记录(1天生成96个批次的日志文件)
以下面的形式写到日志文件中日志文件命名规则如下UB+年份+月份+日期+_+批次
以.txt结尾(UB_20080101 _01.txt)日志内容格式及格式示例如下:
(CallBillV1.01+年份+月份+日期+:+小时+分钟+秒钟)
类型标识 ¦手机号码 ¦手机号码 ¦手机号码 ¦手机号码 ¦手机号码 ¦时间 ¦0 ¦时间 ¦操作类型 CallBillV1.01 20080101:235322
8001 ¦13637401414 ¦13637401414 ¦13637401414 ¦13637401414 ¦13637401414 ¦20080101:235301 ¦0 ¦20080101:235301 ¦10
8002 ¦13637401414 ¦13637401414 ¦13637401414 ¦13637401414 ¦13637401414 ¦20080102:102201 ¦0 ¦20080102:102201 ¦20
8003 ¦13637401414 ¦13637401414 ¦13637401414 ¦13637401414 ¦13637401414 ¦20080103:172601 ¦0 ¦20080103:172601 ¦100 类型标识是与操作类型属性相关的 当billtype=10那么类型标识等于8001, billtype=20 类型标识=8002
billtype=100 类型标识=8003
哎,本人对于oracle完全是个新手啊,对jobs完全不了解!求各位大侠帮下忙啊,谢谢了
啊啊 ~不然要被炒了,我的命运把握在你们的手中! oracle表A结构如下且表中如果有以下三条记录:
Mobile 用户号码 InTime 操作时间 Flag 是否已生成日志(默认值为0) BillType 操作类型(默认值为10 允许输入20或100)
13637401414 2008-01-01 23:53:01 0 10
13637401414 2008-01-02 10:22:01 0 20
13637401414 2008-01-03 17:26:01 0 100
每15分钟扫描一次A表将这15分钟内产生的记录(1天生成96个批次的日志文件)
以下面的形式写到日志文件中日志文件命名规则如下UB+年份+月份+日期+_+批次
以.txt结尾(UB_20080101 _01.txt)日志内容格式及格式示例如下:
(CallBillV1.01+年份+月份+日期+:+小时+分钟+秒钟)
类型标识 ¦手机号码 ¦手机号码 ¦手机号码 ¦手机号码 ¦手机号码 ¦时间 ¦0 ¦时间 ¦操作类型 CallBillV1.01 20080101:235322
8001 ¦13637401414 ¦13637401414 ¦13637401414 ¦13637401414 ¦13637401414 ¦20080101:235301 ¦0 ¦20080101:235301 ¦10
8002 ¦13637401414 ¦13637401414 ¦13637401414 ¦13637401414 ¦13637401414 ¦20080102:102201 ¦0 ¦20080102:102201 ¦20
8003 ¦13637401414 ¦13637401414 ¦13637401414 ¦13637401414 ¦13637401414 ¦20080103:172601 ¦0 ¦20080103:172601 ¦100 类型标识是与操作类型属性相关的 当billtype=10那么类型标识等于8001, billtype=20 类型标识=8002
billtype=100 类型标识=8003
第二 oracle可以调用包实现文件的写入(你去网上找找吧,不过在使用时必须要修改配置参数)。
第三 可以用job调用存储过程。实现方法:
你先用pl_sql建立一个存储过程查询里的表,并且写日志文件。
然后将作业定制时间调用存储过程。