Oracle——数据处理

SQL的类型

  • 1、DML(Data Manipulation Language 数据操作语言): select insert update delete
  • 2、DDL(Data Definition Language 数据定义语言): create table,alter table,truncate table,drop table,create/drop view,sequnece,index,synonym(同义词)
  • 3、DCL(Data Control Language 数据控制语言): grant(授权) revoke(撤销权限)

DML

插入数据

insert into emp(empno,ename,sal,deptno) values(1001,'Tom',3000,10);

-- 或 采用地址符 &

insert into emp(empno,ename,sal,deptno) values(&empno,&ename,&sal,&deptno);
输入 empno 的值:  1002
输入 ename 的值:  'Mary'
输入 sal 的值:  2000
输入 deptno 的值:  20
原值    1: insert into emp(empno,ename,sal,deptno) values(&empno,&ename,&sal,&deptno)
新值    1: insert into emp(empno,ename,sal,deptno) values(1002,'Mary',2000,20)

-- 批量添加数据

--一次性将emp中,所有10号部门的员工插入到emp10中
insert into emp10 select * from emp where deptno=10;

海量插入数据

1、数据泵(PLSQL程序)

  dbms_datapump(程序包)

2、SQL*Loader

3、外部表

delete和truncate的区别

1、delete逐条删除;truncate先摧毁表 再重建

2、delete是DML truncate是DDL***

        (可以回滚) (不可以回滚)

执行DDL类型的命令会提交事务

3、delete不会释放空间 truncate会

4、delete会产生碎片 truncate不会

  • 碎片:在Oracle中有一个指针(高水位线)记录着下次insert的位置,如果我们在数据的中间执行delete命令就会产生碎边(数据不连续)

5、delete可以闪回(flashback) truncate不可以

  • 闪回:还原数据

Oracle中的事务

1、起始标志: 事务中的第一条DML语句

2、结束标志:提交: 显式 commit 隐式: 正常退出 DDL DCL

        回滚: 显式 rollback 隐式: 非正常退出 掉电 宕机

猜你喜欢

转载自www.cnblogs.com/x54256/p/9002043.html