oracle

关注公众号 jb51net

关闭
首页 > 数据库 > oracle > oracle数据库增删改查

Oracle数据的插入insert、更新update、删除delete、truncate举例详解

作者:多sir

SQL语法是所有操作的基础,包括创建、查询、更新和删除数据,下面这篇文章主要给大家介绍了关于Oracle数据的插入insert、更新update、删除delete、truncate的相关资料,文中通过代码介绍的非常详细,需要的朋友可以参考下

前言

本文主要概述的内容是在Oracle中数据的插入-insert、更新-update、删除-delete、truncate。也会把工作当中可能用到的场景给总结出来,以方便大家需要时查询。

插入数据-insert

单行插入所有列

insert into 表名 values(值1,值2,值3……);
insert into 表名 values(值1,值2,值3……);
insert into 表名 values(值1,值2,值3……);
commit;
……

注意:values值的顺序需要和表的字段顺序保持一致,如果没有具体值需用null填充,否则会报错(没有足够的值)。
执行一行,插入一条数据,若要拆入多行数据,则编辑好对应值,执行多行即可。

部分字段插入数据

工作中有时只想给表中的某几个字段插入值,或者插入所有列但忘记表中的字段顺序时,可以指定字段和对应的值来进行操作。

insert into 表名(字段1,字段2,字段3……)  values(值1,值2,值3……);
commit;

将表1数据插入到表2

这个应用场景和数据备份相似,或者理解为数据的复制都可以,目的是要从一个表中筛选出来的数据复制到另一个表中。
注意:两个表的表结构必须保持一致

insert into 表2 select * from 表1; --将表1的所有数据插入到表2中
commit;

insert into 表2 select * from 表1 where 条件;  --可以加筛选条件
commit;

插入检索出的数据

此方式工作中也经常使用,可以理解为上述几种方式的结合。通过检索出另一张表的数据将值插入到具体指定的列。

insert into 表1(字段1,
                字段2,
                字段3,
                 ……) 
  select 字段1,
         字段2,
         字段3,
          ……
  from 表2
  [筛选条件……]
  
  commit;

更新数据-update

基本的UPDATE语句由三部分组成,分别是:

--更新表中列的值
update 表名 
	set 字段1 = 值1, 
		字段2 = 值2,
		……
where 筛选条件;

--删除某列的值
update 表名 set 字段1 = NULL where 筛选条件;

删除数据-delete & truncate

从一个表中删除(去掉)数据,使用DELETE语句。有两种使用DELETE的方式:

注意:where子句很重要,因为稍不注意,就会错误地删除表中所有行。

DELETE删除整行而不是删除列。要删除指定的列,请使用 UPDATE 语句。

如果想从表中删除所有行,不要使用 DELETE。可使用 TRUNCATE 语句,它完成相同的工作,而速度更快(因为不记录数据的变动)。

--删除符合条件的某行/某几行数据
delete from 表名 where 筛选条件;  

--删除表中的所有行 
delete from 表名;  
truncate table 表名;  

dalete和truncate的主要区别

附:Oracle一次插入多条记录

方式1:

要向数据库中写入多条记录,记录集已经确定,如果一次一次插入势必影响效率。

解决方法:

注意:上面最后一个select之后没有union all,否则报错。

方式2:

总结

到此这篇关于Oracle数据的插入insert、更新update、删除delete、truncate的文章就介绍到这了,更多相关Oracle数据插入更新删除内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

您可能感兴趣的文章:
阅读全文