★.存储过程

  语法:

  delimiter $$

   create procedure usp_list()

   begin

   select * from student;

   end$$

  delimiter ;

1.事务

  概念:

    就是一堆操作的集合。要么都执行成功,要么都执行失败

  基本要素:

    1.原子性:事务是一个完整的操作。事物的各元素是不可分的。

    2.一致性:事务完成时,数据必须处于一致状态。

    3.隔离性:事务是独立的,它不应以任何方式依赖于或影响其他事务。

    4.持久性:事务的处理结果是永久的。

  执行事物的语法:

    1.开始事务

      语法:

      begin;   或   start transaction;

    2.提交事务

      语法;

      commit;

      SET autocommit = 0;   关闭自动提交

      SET autocommit = 1;   开启自动提交

    3.回滚(撤销)事务

      语法:

      rollback;

  编写事务时要遵守一下原则:

    1.事务尽可能简短

    2.事务中访问的数据量尽量最少

    3.查询数据时尽量不要使用事务

    4.在事务处理过程中尽量不要出现等待用户输入的操作

2.视图

  概念:

    一种虚拟表,通常作为来自一个或多个表的行或列的自己创建的

  作用:

    1.筛选表中的行

    2.房子未经许可的用户访问敏感数据

    3.将多个物理数据表抽象为一份逻辑数据表

  对用户的好处:

    1.结果更容易理解

    2.获得数据更容易

  对开发人员的好处:

    1.限制数据检索更容易

    2.维护应用程序更方便

  使用SQL语句创建视图

    语法:

    create view 视图名

         as

       <select 语句>

    命名规范:view.xxxx   或    v.xxxx

  使用SQL语句删除视图

    语法:

    drop view [if ixists] 视图名

  使用SQL语句查询视图数据

    语法:

    select 字段1,字段2,…… from view_name

  使用视图的注意事项

    1.每个视图中可使用多个表

    2.与查询相似,一个视图可以嵌套另一个视图,但最好不要超过三个

    3.对视图数据进行添加,更新和删除操作直接引用表中的数据

    4.当时图数据来自多个表时,不允许添加和删除数据

3.索引

  概念:

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

  索引分类

    1.普通索引

      允许在定义索引的列中插入重复值和空值

    2.唯一索引

      不允许有两行具有相同的索引值

    3.主键索引

      定义一个主键将自动创建主键索引,主键索引是唯一索引的特殊类型

    4.复合索引

      可以将多个列组合作为索引

    5.全文索引

      在定义索引的列上支持值的全文查找,允许在这些索引列中插入重复值和空值

    6.空间索引

      是对空间数据类型的列建立的索引

  创建索引

    语法:

    create 索引类型 index index_name

  删除索引

    语法:

    drop index index_name on table_name

  建立索引的标准

    1.频繁搜索的列

    2.经常用作查询选择列

    3.经常排序,分组的列

    4.经常用作连接的列(主键 / 外键)

  查看索引

    语法:

    show index from table_name;

    例如:

  

4.备份和恢复

   mysqldump命令格式

    备份数据库

      语法:

      mysqldump -u 用户名 -h 主机名称(本机可省略) -p 密码

      需要备份的数据库 [表名.....] >备份文件的名称.sql

    恢复数据库

      语法:

      mysql -u 用户名 -p 密码 [数据库名] <备份后的文件

posted on 2018-02-24 15:19  ↑↑↓↓←→←→  阅读(86)  评论(0编辑  收藏  举报