Oracle sql loader 导数据时添加序号的三种方法

1.用触发器和序列实现

CREATE SEQUENCE u.seq_questionno

START WITH 0

MAXVALUE 999999999999999999999999999

MINVALUE 0

NOCYCLE

NOCACHE

NOORDER;

CREATE OR REPLACE TRIGGER u.tr1

   BEFORE INSERT

ON u.t1

   REFERENCING OLD AS OLD NEW AS NEW

FOR EACH ROW

BEGIN

SELECT c1.NEXTVAL

INTO :NEW.c1

FROM DUAL;

END;

控制文件:

LOAD DATA  INFILE 'G:a.txt'  BADFILE 'G:a.bad' DISCARDFILE 'G:a.dsc' INTO TABLE "T1" APPEND FIELDS TERMINATED BY X'9' TRAILING NULLCOLS (      C2,     C3,      C4,     C5     -- C1 )

2.直接在控制文件中加入序列

LOAD DATA  INFILE 'G:a.txt'  BADFILE 'G:a.bad' DISCARDFILE 'G:a.dsc' INTO TABLE "T1" APPEND FIELDS TERMINATED BY X'9' TRAILING NULLCOLS (      C2,     C3,      C4,     C5,     C1 "SEQ_QUESTIONNO.nextval" )

3.不用序列,在控制文件中使用 RECNUM

LOAD DATA  INFILE 'G:a.txt'  BADFILE 'G:a.bad' DISCARDFILE 'G:a.dsc' INTO TABLE "T1" APPEND FIELDS TERMINATED BY X'9' TRAILING NULLCOLS (     C1 RECNUM,     C2,     C3,      C4,     C5 )

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏数据之美

Hive 基础(2):库、表、字段、交互式查询的基本操作

1、命令行操作 (1)打印查询头,需要显示设置: set hive.cli.print.header=true; (2)加"--",其后的都被认为是注释...

27710
来自专栏数据处理

hive sql练习

642
来自专栏个人随笔

MySQL基本语句

创建表 如果是关键字  那么使用反引号  `` esc下面的键 create  table  [if  not  exists] 表名(    字段1  数据类...

3497
来自专栏Netkiller

数据库安全·保护表字段

以下节选择《Netkiller Architect 手札》地址 http://www.netkiller.cn/architect/ 接下来几周的话题是数据库安...

2745
来自专栏数据和云

高手过招:用SQL解决环环相扣的刑侦推理问题(罗海雄版本)

本文是继 杨长老 刑侦高考:如何用SQL解决环环相扣的刑侦推理问题 之后,罗海雄老师提供了一个带注释的版本,希望初学者也能够直接看懂,不仅仅是Oracle的版...

1052
来自专栏一个会写诗的程序员的博客

MyBatis 多参数综合查询的动态 SQL 实现示例

301
来自专栏章鱼的慢慢技术路

SQL数据查询之——嵌套查询

1273
来自专栏跟着阿笨一起玩NET

SQL Server 2008 新语法

351
来自专栏杨建荣的学习笔记

一条执行时间两天半的sql语句简化(r4笔记第62天)

周末刚过去,今天来到办公室做例行检查,就发现一条sql语句已经执行234841秒(65小时),已经两天多了。 查看了一下对应的Undo资源消耗,发现这个语句是最...

2698
来自专栏散尽浮华

mysql操作命令梳理(2)-alter(update、insert)

在mysql运维操作中会经常使用到alter这个修改表的命令,alter tables允许修改一个现有表的结构,比如增加或删除列、创造或消去索引、改变现有列的类...

1776

扫码关注云+社区