oracle 一次sql插入多条记录

假如我有一个学生信息表,创建的表结构如下:

create table student(

id int primary key not null,

name varchar(10) not null)

熟悉MySQL数据库的可能知道,如果你想要批量插入一些数据,一条INSERT语句插入批量数据的写法为:

INSERT INTO [表名]([列名],[列名]) 

 VALUES([列值],[列值])),

VALUES([列值],[列值])),

VALUES([列值],[列值]));

即insert into student(id,name)

values(1,‘张三’),

values(2,‘李四');

可是这种写法在oracle中是不支持的,oracle中的用法如下:

insert all

into student(id,name) values(1,'张三')

into student(id,name) values(2,'李四')

select 1 from dual;

特别说明:dual是在oracle中创建的一个辅助表,你可以自主的新建成任意的表名,biao1,mytable都行

select 1 from dual这句话不能丢,会报语法错误,而且这句话的作用也仅仅是让sql语法正确。

猜你喜欢

转载自blog.csdn.net/baidu_23263735/article/details/81252808