• Oracle(DML、事务)


    1、添加数据

    (1)和mysql添加数据的方法相同。

    (2)添加&的方式:

    (3)&t:可以选择性的输入列

    (4)&t:选择性的输入表

    (5)一次性插入多条数据:

    先创建一张表,该表的字段与emp相同:

    查询工作为CLERK的员工信息,将多条信息一次插入到新创建的表中:

    2、更新数据:UPDATE

    3、删除数据:DELETE(如果不指定条件的话会删除表中的所有数据)

    delete和truncate的区别:

    (1)delete是逐条删除,truncate先摧毁表表结构,再重建表结构

    (2)delete:DML(可以回滚),truncate:DDL(不可以回滚)

    (3)delete:删除不会释放表空间,truncate:回释放

    (4)delete:会产生碎片,truncate:不会

     如果将二号位置的数据删除,二号位置便会空出来,当再次插入数据的时候会选择三号上面的位置,而不会选择二号位置,因此会产生碎片。

    碎片的去除:

    方法一:

    alter table 表名 move;

    方法二:

    数据的导入和导出。

    (5)delete可以闪回(flashback,一种恢复操作),truncate不可以

    (6)与truncate相比,delete速度更快

    4、oracle中的事务

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

    (2)结束标志

    提交

    显式:提交COMMIT

    隐式:正常退出:DDL、DCL

    回滚

    显式:回滚ROLLBACK

    隐式:非正常退出、掉电

    (3)保存点:

    设置表存点:

    savepoint 名称;

    回滚到保存点:

    rollback to savepoint 名称;

    这样的话可以设置事务的回滚的位置,避免将一系列操作全部撤销。

    (4)事务的隔离级别(三种)

    READ COMMITED(默认):只允许事务读取已经被其他事务提交的变更,可以避免脏读

    SERIALIZABLE(串行化):确保事务可以从一个表中读取相同的行,在这个事务持续期间,禁止其他事务对该表执行插入、更新和删除操作,所以并发问题都可以避免,当时性能十分低下。

    READONLY:只能查不能改

  • 相关阅读:
    Python 爬虫一 简介
    linux 基础笔记本
    Celery 分布式任务队列快速入门
    Git & Github
    Python 设计模式
    Python 数据结构
    Python 基础算法
    js2wordcloud 词云包的使用
    lambda 3
    sql server 远程
  • 原文地址:https://www.cnblogs.com/zhai1997/p/12359235.html
Copyright © 2020-2023  润新知