Oracle之DML语句

Oracle数据库的DML表数据的操作有三种:

① insert (插入);② update(更新);③ delete(删除)。

为了将Oracle数据库的测试数据保持完整,我们队数据库的表emp进行复制到另外一张表上。

--创建以张新表,将数据拷贝到新表temp中。
create table temp as select  * from emp;

--复制表结构
create table temp2 as select * from emp where 1=2;  --同样也行!
--insert 插入
--
写法1 insert into temp2(empno,ename,job,mgr,hiredate,sal,comm,deptno) values (9527,'Bob','SALESMAN',null,sysdate,1,null,10); select * from temp2; insert into temp2(empno,ename,job,mgr,hiredate,sal,comm,deptno) values (1024,'Aillen','SALESMAN',9527,sysdate,1000,100,10); --写法2 省略了指定的列名,顺序不能改变,按照表结构插入 insert into temp2 values (1025,'SuperDrew''MANAGER',1024,sysdate,8000,200,10); --写法3 insert into temp2 (empno,ename,job) values(1027,'Drew','KING'); --直接将查询结构插入表中 insert into temp2 (select * from emp); insert into temp2(empno,ename) values(1217,'Naike') --update 更新 --将10部门的员工薪资加 $100 select * from temp2; update temp2 set sal=sal+100 where deptno=10; select * from temp2; --将所有员工的工资都改成1000? update temp2 set sal = 1000; --delete 删除 删除要注意要加where条件 select * from temp2; --删除部门编号为20的所有员工 delete from temp2 where deptno=20; delete from temp2; --清空表 无需提交事务,效率也高 truncate table temp2; -----------drop database orcl---谨慎使用!小心数据库里的实例数据将被清空!
原文地址:https://www.cnblogs.com/superdrew/p/8057489.html