大家好,又见面了,我是你们的朋友全栈君。
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;
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/154786.html原文链接:https://javaforall.cn