讲解往表中顺序插入N条记录的简易方法

发表于:2008-08-12来源:作者:点击数: 标签:记录讲解顺序
在 Oracle 9中,可以通过简单的方法顺序插入记录,形如: CREATE TABLE t (seqno NUMBER, a VARCHAR2(5), b VARCHAR2(5)); 想要 INSERT INTO t VALUES (1, 'X', 'X'); (2, 'X', 'X') (3, 'X', 'X') ... (N+1, 'X', 'X') 只需要执行: INSERT INTO t (seqno, a
Oracle9中,可以通过简单的方法顺序插入记录,形如:

 

  CREATE TABLE t (seqno NUMBER, a VARCHAR2(5), b VARCHAR2(5));

 

  想要

 

  INSERT INTO t VALUES (1, 'X', 'X');

 

  (2, 'X', 'X')

 

  (3, 'X', 'X')

 

  ...

 

  (N+1, 'X', 'X')

 

  只需要执行:

 

  INSERT INTO t (seqno, a, b)

 

  SELECT LEVEL + 1, a, b

 

  FROM dual, t

 

  CONNECT BY LEVEL <= &N

 

  这个方法确实不错。

 

  具体请看:

 

  SQL> insert into t values(1, 'x', 'X');

 

  已创建 1 行。

 

  SQL> insert into t(seqno, a, b) select level+1, a, b from dual, t connect by lev

 

  el<=&N

 

  2 ;

 

  输入 n 的值: 10

 

  原值 1: insert into t(seqno, a, b) select level+1, a, b from dual, t connect

 

  by level<=&N

 

  新值 1: insert into t(seqno, a, b) select level+1, a, b from dual, t connect

 

  by level<=10

 

  已创建10行。

原文转自:http://www.ltesting.net