SQL语句复习【专题三】

SQL语句复习【专题三】

DML 数据操作语言【insert into update delete】
创建表 简单的方式【使用查询的结果集来创建一张表】
create table temp as select * from emp
select * from temp
--删除表
drop table temp

--创建一张空表【只是复制了表的结构】
select * from emp where 1!=1
create table temp as select * from emp where 1!=1

--insert插入测试数据
select * from temp
insert into temp (empno, ename, job,mgr,hiredate,sal,comm,deptno) values('0001','张三丰','掌门',null,sysdate,5000,1000,10);
insert into temp (empno, ename, job,mgr,hiredate,sal,comm,deptno) values('0002','张无忌','教主',null,sysdate,3000,500,10);
--提交数据【一定要提交事务】
commit

--显式的插入指定的字段数据,字段的顺序可以和表结构不一致。可以不插入所有的数据,插入指定的某些字段的数据。
insert into temp (empno, ename, job,mgr,hiredate,sal,comm,deptno) values('0003','赵敏','郡主',null,sysdate,3000,500,20);
--回滚数据--提交数据之后就不能再回滚。
rollback
-- 只是对插入的数据指定某些值
insert into temp (ename,empno, job,hiredate,sal,deptno) values('周芷若','0004','峨眉派',sysdate,10000,20);
-- 不显式的声明要写入的字段,必须按照表结构的顺序书写
insert into temp values('0005','小昭','侍女',null,sysdate,3000,500,10);

--修改数据 update:所有需要修改的数据,都需要使用 where 条件筛选出来。
--将张无忌的mgr 设置为 张三丰
update temp set mgr='0001' where ename='张无忌'
select * from temp

--将所有的员工的工资都提升50%
update temp set sal=sal*1.5 where 1=1

--将所有奖金为null 的员工的奖金设置为0
update temp set comm=nvl(comm,0) where 1=1

--将没有领导的员工的领导设置为自己的编号
update temp set mgr=nvl(mgr,empno) where 1=1

--删除 from 可以省略
delete from temp where ename='周芷若'
delete temp where ename='赵敏';
commit

--如果删除所有的数据,不加条件就ok
delete temp

--全部删除数据的时候可以使用 truncate, 效率更高,而且不需要提交。
truncate table temp

转载于:https://www.cnblogs.com/cao-yin/p/10497967.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值