• 第五章 事务,视图,索引,备份和恢复


    一.事务

      1.事务是指将一系列操作捆绑为一个整体进行统一管理

      2.1什么是事务:

          默认条件下,每单条SQL就是一个事务

      2.2事务分为:

      (1)原子性:事务中的所有元素都必须作为一个整体来提交或回滚,如果事务中任何元素失败,则整个事务失败。

      (2)一致性:事务执行完毕后,数据的状态是一致的。

      (3)隔离性:两个事务之间互不影响。

      (4)永久性:事务执行完毕后,对数据都是永久影响的。

    3.事务操作的关键字

      1.开启/关闭 自动提交:set autocommit=0/1

      2.开始事务:begin/start transaction

      3.提交事务:commit

      4.回滚事务:rollback

    4.事务村塾过程的例子:

    delimiter $$
    
    create procedure usp_transfer()
    
      begin
    
      declare t_error integer default 0;  ##语法错误 from 违反了约束
    
      ##continue继续 hanlder 执行 并且对 t_error重载赋值为1
    
      declare continue handler for sqlexception set t_error=1;
    
      set autocommit=0;
    
        start transction;
    
        update bank set balance=balance-100 where cid=1;
    
        update bank set balance=balance+100 where cid=2;
    
        if t_error>0 then
    
          rolllback;
        else
          commit;
        end if;
      set autocommit=1;
    
      end $$
    
    delmiter ;
    
    call test_sp800()

    二.视图

      1.1:就是一张虚拟表,本质上存储的是一对SQL的集合

      1.2:创建视图:

        

    create view VW_stulist(VW_视图的功能)
    as
    sql语句

     注:当多表中有同名列的时候,在视图这个虚拟表中,只能有一列。手工指定该列是哪个表的。

       1.3:删除视图:

        

    drop view 视图名
    drop table 
    drop database
    drop index
    drop constraint

     注:drop是删除结构,而delete是删除数据

       1.4:视图注意事项:

        (1)视图可以查询多表数据 

        (2)视图可以嵌套
        (3)update,insert,delete不能封装成视图内容,通过图形化界面可以操作数据(操作视图数据,影响的是基本表)。
        (4)删除视图数据的时候,有一定的限定,数据结果来源于多表的时候,不能删除

     三.索引

      1.1:是一种有效组合数据的方式,为了快速查找指定记录

      1.2:索引分类:

        普通索引

        唯一索引

        主键索引

        复合索引

        全文索引 场景:一篇文章保存字段 content:1万个字   mysql  like

        空间索引

      1.3建立索引的原则
        (1)在列基数比较少的列上,不适合创建索引

        (2)在不经常使用的列 上,建立索引没有意义

        (3)在频繁搜索的列上,适合建立索引

        

    四.授权

      1.1创建用户

    create user 用户名 identified by '密码'

       1.2:分配权限:

    grant 权限名称  update,delete,insert   on  数据库.表名  to 用户名
  • 相关阅读:
    网页设计基础教程最最简单的一个ppt
    [转载]DIV CSS设计时IE6、IE7、FF 与兼容性有关的特性
    微软免费图书《Introducing Microsoft LINQ》翻译Chapter2.1:C# 3.0 特性(对象初始化表达式\匿名类型\查询表达式)
    asp.net3.5关于FileUpload控件的一个注意点的思考
    jQuery学习笔记:文档处理
    发布一个简单小巧的ajax操作类
    c#3.0关于JSON简单操作的实用帮助类(泛型实现)
    iBATIS.net直接执行sql语句
    c#将对象序列化为字符串和将字符串反序列化为对象
    iBATIS.net的OR映射篇
  • 原文地址:https://www.cnblogs.com/wang2386033566/p/8465921.html
Copyright © 2020-2023  润新知