Oracle 怎样一次插入多条记录

Oracle 一次性插入多条记录跟 MYSQL 有很大不同。MYSQL  是这样的,但在 Oracle 中行不同。

 

INSERT INTO Persons (LastName, Address) VALUES ('Wilson', 'Champs-Elysees'),('Gates', 'Champs-Elysees')

 

Oracle 可以使用虚拟表 dual 一次插入多条记录。dual 在Oracle里有一个很奇特的“表”。可以利用这个Dual来做文章。

 

首先,你知道 select '1' from dual 是啥结果吗? 对了,结果就是返回1。

其次,你知道

select '1' from dual
union all
select '2' from dual

 

是啥结果吗? 对鸟,结果是 

 

1

2

 

那么,最关键的地方来了, 

 

insert into 表名 (字段1)
select '1' from dual
union all
select '2' from dual

 
那么这一次就插入了两条数据。当然,如果全字段插入 那个(字段1)还可以省略掉。

下面一个具体例子:

 

insert into doc_data (code,id,value,state)
        select '13','川A','成都市公安局交通警察支队车辆管理所',0 from dual
union all select '13','川B','绵阳市公安局交通警察支队车辆管理所',0 from dual
union all select '13','川C','自贡市公安局交通警察支队车辆管理所',0 from dual
union all select '13','川D','攀枝花市公安局交通警察支队车辆管理所',0 from dual

 

参考:Oracle使用虚拟表dual一次插入多条记录

 

原文链接:http://woqilin.blogspot.com/2016/05/oracle.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值