欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Oracle插入(insert into)

程序员文章站 2022-04-15 10:42:57
Oracle插入(insert into) 转载:http://www.oraclejsq.com/article/010100199.html Oracle对表数据的插入是使用insert命令来执行的。 insert 命令结构: insert into 表名(列名1,列名2,列名3.....)va ......

oracle插入(insert into)

转载:http://www.oraclejsq.com/article/010100199.html

oracle对表数据的插入是使用insert命令来执行的。

insert 命令结构:

 

insert into 表名(列名1,列名2,列名3.....)values(值1,值2,值3.....);
语法解析:

1、列名可以省略,当列名不填时,默认的是表中的所有列,列的顺序是按照建表的顺序进行排列的。

2、列名的数量和值的数量要一致,并且值的类型要和列的类型一一对应。

  3、当表当中某些字段设置了某些约束的情况下,必须按照字段的约束来进行该值的插入,例如:学生信息表(stuinfo)当中设置有主键(主键字段是stuid),因此该字段必须具有唯一性,不能和原有的数据重复。age、stuname、calassno等字段是必填字段,因此是必须有值的。
案例1:向学生信息表(stuinfo)插入一条数据:
insert into student.stuinfo (stuid, stuname, sex, age, classno, stuaddress, grade, enroldate, idnumber)
values ('sc201801005''龙七''1', 26, 'c201801''福建省厦门市xxx号''2018', to_date('01-09-2018''dd-mm-yyyy'),
 '3503021992xxxxxxxx');
select from student.stuinfo t where t.stuid='sc201801005';
 
案例2:向学生信息表(stuinfo)插入重复数据:
insert into student.stuinfo (stuid, stuname, sex, age, classno, stuaddress, grade, enroldate, idnumber)
values ('sc201801005''龙七''1', 26, 'c201801''福建省厦门市xxx号''2018', to_date('01-09-2018''dd-mm-yyyy'),
 '3503021992xxxxxxxx');

insert插入一个select的结果集

在 oracle 中,一个 insert 命令可以把一个select结果集一次性插入到一张表中。

语法结构如下:

 

 insert into 表 select 子句;
案例3:把上一章节利用oracle查询(select)语句备份的表stuinfo_2018的数据一次插入表stuinfo当中:
delete  from student.stuinfo t where t.stuid in (select b.stuid from student.stuinfo_2018 b );
 
insert into student.stuinfo select from student.stuinfo_2018;
 
select from student.stuinfo;