Oracle数据库知识梳理---续(DML语言)

7.DML语言

sql语言的类型 数据库语言实现数据的crud
DML语句(Data Manipulation Language)数据库操作语言
insert
update
delete
select

DDL语言(Data Definition Language)数据定义语言
create table
create view
index
sequence
synonym 同义词
truncate table

DCL(Data control Language)数据控制语言
commit
rollback
savetpointe

insert语言
1 插入一个完整记录

insert into emp values (1, 'aaa', 'clerk', 7092, '17-12月-80', 8000, NULL, 20);

2 插入部分记录

insert into emp(empno,ename,deptno) values (2,'cc',20);

3 插入空值(显示和隐式)

4 创建脚本 取地址符&

SQL> insert into emp(empno, ename, deptno ) values (&empno, &ename, 20);
            输入 empno 的值:  4
            输入 ename 的值:  'cccc4'
            原值    1: insert into emp(empno, ename, deptno ) values (&empno, &ename, 20)
            新值    1: insert into emp(empno, ename, deptno ) values (4, 'cccc4', 20)

5 批量插入数据

把10号部门的员工 copy到另外一个表中
create table emp10
as
select * from emp where 1=2;

insert into emp10  select * from emp where deptno = 10;

EMPNO ENAME    JOB   MGR HIREDATE   SAL  COMM DEPTNO
---------- ---------- --------- ---------- -------------- ---------- ---------- ----------
7782 CLARK      MANAGER         7839 09-6月 -81           2450                    10
7839 KING       PRESIDENT            17-11月-81           5000                    10
7934 MILLER     CLERK           7782 23-1月 -82           1300                    10

update 更新
模式如下
UPDATE table
SET column = value [, column = value, …]
[WHERE condition];

                update table emp10
                set deptno = 20
                where empno = 7782

删除数据
—删除指定数据

                delete emp10 
                where empno=7782
                delete emp10 
                where empno=7782

–删除整个表中的数据

            delete emp10 (但是表结构在...)

            drop emp10; 删除表

delete(删除表的数据)和truncate表(把表drop 然后再重新建表 )区别

            1 delete逐条删除 truncate先摧毁表再重建    
            2 delete语言是DML语言 truncate是DDL
                DML语言可以闪回   做错的并且提交了.可通过闪回,撤销操作
                DDL语言不可以闪回  flashback   
            3 delete是逐条删除,会产生碎片,    truncate不会产生碎片 
                行移动功能: 要开启闪回功能,必须要开启行移动功能
            4 delete不会释放空间 truncate会
            5 delete可以回滚 truncate不可以
            6 oracle delete快  mysql truncate快

事务
1.基本概念

        概念      一个或者多个DML语言组成
        特点      要么都成功,要么都失败
        特性      原子性 一致性 隔离性 持久性
        事物的隔离性  多个客户端同时操作数据库的时, 要隔离他们的操作
            否则:脏读 不可重复读 幻读
        设置不同的搁置级别来解决

        oracle默认情况下,事务是打开

2.oracle中的事务 生命周期

        1 事务起始标志 DML语言 (oracle默认事务打开的)
        2 事务的结束标志 
            提交: 显示提交commit
                隐式提交  
                    1) 执行DDL语言
                        eg create table语言 还有I个隐式的功能
                        提交之前的没有提交的DML语言(insert update)
                    2) 正常退出
            回滚:显示 rollback  
                隐式 掉电/宕机/非正常退出==系统出错了
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值