Oracle数据库学习(九):oracle 增删改&数据备份

Oracle 增删改&数据备份

1.数据库的增删改

  • 特征

    • 增加、删除和修改的数据,SQL语句执行完毕后,不会立马进行数据的写入,还需要手动对数据进行提交,如果数据有问题可以进行回退

    • 主键:非空唯一的字段可以设置为主键

      • 在一张表中,某个字段的值是非空唯一的,将此字段设置为主键(若存在多个,任选一个都可以)

      • 主键的作用:唯一的标识一条数据。

  • 增加数据

    • 格式:insert into 表名 (字段名1, ……, 字段名n) values (值1, ……, 值n)

    • 注意:

      • 主键必须给值,允许为空的字段可以不给值

      • 字段名为要赋值的字段,值与字段的顺序和数量必须一一对应

      • 如果是全字段插入,可以省略字段名部分。格式:insert into 表名 values(值1,……,值n)

      -- 增加信息:部门:50,名称:LOL学院,地址:北京
         insert into dept(deptno,dname,loc) values (50,'LOL学院','北京');
         select * from dept;
      

      请添加图片描述

      -- 在部门中新增一条数据,只有部门编号和名称
       insert into dept(deptno,dname)values(60,'吃鸡学院');
      

      请添加图片描述

      -- 全字段插入
         insert into dept values(70,'魔法学院','上海');
      

      请添加图片描述

  • 删除数据

    • 删除表中所有数据:(表的结构还在)

      • 格式:delete from 表名 (删除表中的所有数据)

      • 格式:truncate table 表名 (删除表中的所有数据,效率高于delete)

    • 删除表的结构和数据

      • 格式:drop table 表名 (彻底删除该表)
      delete from deptBak
      

      请添加图片描述

    • 删除表中符合条件数据

      • 格式:delete from 表名 where 条件
      delete from dept where deptno = 50;
      

      请添加图片描述

  • 更新数据

    • 将表中符合条件的字段改成新值

      • update 表名 set 字段名1=值1,……,字段名n = 值n where 条件
      update dept set dname='Java学院', loc='上海' where deptno = 60;
      select * from dept;
      

      请添加图片描述

    • 将表中字段的值全部改为新的值

      • update 表名 set 字段名1=值1,……,字段名n = 值n
         update dept set dname='Java学院', loc='上海';
      

      请添加图片描述

2.数据备份

  • 特征:只会备份表结构和表的数据,约束不会备份

    • 表级别备份(全部备份)

      • create table 新表名 as select * from 备份表名

        create table deptBak as select * from dept;
        select * from deptBak;
        

        请添加图片描述

      • 无主键约束

        insert into deptBak values(60,'11','11');
        select * from deptBak order by deptno desc;
        

        请添加图片描述

    • 部分备份:

      • create table 新的表名 as select 字段名1, ……, 字段名m from 备份表名

        create table deptBak2 as select deptno,dname from dept;
        select * from deptBak2;
        

        请添加图片描述

    • 数据整体插入

      • insert into 插入的表名 select * from 表名

      • 注意:查询语句结果的字段必须和插入表名的字段数量一致,类型一致

         delete from deptBak;
         insert into deptBak select * from dept;--字段和顺序一样
         select * from deptBak;
        

        请添加图片描述

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值