您的位置:首页 > 其它

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

2018-04-07 23:10 239 查看
1.事务是一种机制,一个操作序列,它包含了一组数据库操作命令,并且把所有的命令作为一个整体一起向系统提交会撤销操作请求。
2.数据库事务具有如下特性:
A.原子性
B.一致性
C.隔离性
[align=left]D.持久性
[/align]
以上四个特性也被称为ACID特性。

3.使用下列语句来管理事务。
A.BEGIN或TEANSACTION(开始事务)。
  //开始事务
    begin;
    update `bank` set `currentMoney` =`currentMoney` -1000
    where `customerName` ='张三';
B.COMMIT(提交事务)。
  //提交事务,写入硬盘,永久的保存
    commit;
C.ROLLBACK(回滚事务)。
  //回滚事务,数据恢复到未更新前的状态
   RollBACK;
D.或者使用SET autocommit=0 设置自动提交关闭,进行事务提交或回滚后,再使用SET autocommit=1 开始自动提交。
  //开始事务
  begin;
  update `bank` set `currentMoney` =`currentMoney` -1000
  where `customerName` ='张三';
  //回滚事务,数据恢复到未更新前的状态
  RollBACK;  SET AUTOCOMMIT=0;
  update `bank` set `currentMoney` =`currentMoney` -500
  where `customerName` ='张三';
  update `bank` set `currentMoney` =`currentMoney` +500
  where `customerName` ='李四';
  //提交事务,写入硬盘,永久的保存
  commit;
  //回滚事务,数据恢复到未更新前的状态
  RollBACK;  set autocommit=1;
4.视图是一种查看数据库一个或多个表中的数据的方法。
  /*查询视图*/
  SELECT * FROM  `view_student_result`;
5.视图是一种虚拟表,通常是作为执行查询的结果而创建的。

   /*创建视图*/   USE mybank;
   DROP VIEW IF EXISTS `view_student_result`;   CREATE VIEW `view_student_result` 
   AS
   SELECT `customerName` AS 姓名,`currentMoney` AS 钱
   FROM `bank`;
   USE information_schema;   /*查询视图*/
   SELECT * FROM  `view_student_result`;
6.视图充当着查询中指定表的筛选器。
   /*查询视图*/
   SELECT * FROM  `view_student_result`;
7.使用CREATE VIEW 语句创建视图。
    /*创建视图*/   USE mybank;
   DROP VIEW IF EXISTS `view_student_result`;   CREATE VIEW `view_student_result` 
   AS
   SELECT `customerName` AS 姓名,`currentMoney` AS 钱
   FROM `bank`;
   USE information_schema;
8.使用SELECT 语句查看视图的查询结果。
   /*查询视图*/
   SELECT * FROM  `view_student_result`;
9.建立索引有助于快速检索数据,索引分为普通索引,唯一索引,主键索引,复合索引,全文索引,空间索引。
  A.常用的数据库备份和恢复方式使用mysqldump命令备份数据库。
  B.使用mysql命令恢复数据库。
  C.通过复制文件实现数据备份和恢复。
10.表数据的导出和导入。
  A.使用select.....into outfile语句实现表数据的导出。  /* 备份数据库*/
  CREATE datbase school2;
  USE school2;
 /*恢复数据库 路径 不要用英文路径名
   source D:\S2\Z.sql;*/
 /*导出*/
 USE school2;
 SELECT * FROM bank;
 INTO OUTFILE 'D:\S2\\Out.txt';/* 恢复数据库 */
CREATE DATABASE school3;
USE school3;
source 'D:\S2\\Out.txt';
  B.使用load data infile......into语句实现表数据的导入。
 /*导入*/
 /*创建表结构*/
 USE mybank;
 create table 表名(字段 类型 )ENGINE = INNODB DEFAULT CHARSET=utf8;
 /*导入数据*/
 LOAD DATA INFILE  ('D:\S2\\Out.txt')指定文本文件的路径和特性 INTO TABLE 表名 (mybank)
 /*查看表数据*/
 select * from mybank(表名);



 
 
 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: