Oracle中以insert values的形式同时插入多条记录

前端之家收集整理的这篇文章主要介绍了Oracle中以insert values的形式同时插入多条记录前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

由于要做测试数据插oracle数据库,想到了MysqL的多个values的形式,但是sql报错。oracle并不支持这种一个insert into 多个values的方法

INSERT INTO users(name,age) VALUES('ccc',333),('aaa',222),('bbb',111);
@H_301_4@ 但是有另一种写法,做个简单记录,跟MysqL中的一个insert多个values的形式差不多。
INSERT ALL INTO tb_red VALUES(1000,8001,'2016-10-10 10:59:59',1,'测试用户1000','红名单0','男','膜法学院','被测')
INTO tb_red  VALUES (1001,'2016-10-10 11:00:00',2,'测试用户1001','红名单1','被测')
INTO tb_red  VALUES (1002,'2016-10-10 11:00:01','测试用户1002','红名单2','被测')
INTO tb_red  VALUES (1003,'2016-10-11 10:59:59','测试用户1003','红名单3','被测')
INTO tb_red  VALUES (1004,'2016-10-11 11:00:00','测试用户1004','红名单4','被测')
INTO tb_red  VALUES (1005,'2016-10-11 11:00:01','测试用户1005','红名单5','被测')
select 1 from dual;

结果:

@H_301_4@

@H_301_4@

说明:

1.第一句用的是insert all into 不是 insert into

2.最后跟的selecr 1 from dual语句中的dual表可以被替换为任何一个只要不是tb_red的表

3.和MysqL的写法不一样,多个values之间不用逗号分隔,但是需要加into tablename的形式的语句在每个values前面

4.只适合于Oralce 9i以上版本

猜你在找的Oracle相关文章