1.什么是事务
事务是一种机制,一个操作序列,它包含了一组数据库操作命令,并且把所有的命令作为一个整体一起向系统提交或撤销操作请求。要么都执行,要么都不执行。
事务是作为最小的控制单元来使用的,特别使用与多用户同时操作的数据库系统。
四大特性:
原子性Atomicity 一致性Consistoncy 隔离性Isolation 持久性Durability
事务操作:
开始:BEGIN、START 提交:COMMIT 回滚:ROLLBACK
SET autocommit= 0/1; 0关闭自动提交 1开启自动提交
注意事项:
事务尽可能简短、事务中访问的数据量尽量最少、查询数据时尽量不要使用事务
在事务处理过程中尽量不要出现等待用户输入的操作。
2.为什么需要事务
事务(transaction)是指将一系列数据操作捆绑成为一个整体进行统一管理,如果某一事务执行成功,则在该事务中进行的所有数据均会提交,成为数据库中永久的组成部分。如果事务执行遇到错误且必须取消或回滚,则数据将全部恢复到操作前的状态,所有数据的更改均被清除。
3.如何执行事务
MySQL提供了多种存储引擎支持事务,支持事务的存储引擎有InnoDB和BDB。InnoDB存储引擎事务主要时通过UNDO日志和REDO日志,MyISAM存储引擎不支持事务。
任何一种数据库,都有各种各样的日志,用来记录数据库的运行情况,日常操作,错误信息等。
A) UNDO日志:复制事务执行前的数据,用于事务在发生异常时回滚数据。
B) REDO日志:记录事务在执行中,每条对数据库进行更新的操作,当事务被提交时,该内容将被刷新到磁盘。
执行事务的语法:
(1) 开始事务:begin;或者start transaction;
(2) 提交事务:commit;
(3) 回滚(撤销)事务:rollback;
1.为什么需要视图
在实际工作中,不同身份的用户所关注的数据库数据可能不同,不同职位的人对数据库中查询的数据范围权限也不同。
数据库管理系统提供的视图这类数据库对象,可以把重复使用的复杂的查询结果保存成视图,也可以设定不同访问范围的视图,不同岗位的员工根据自己的权限来查看相关的数据,以保证数据访问的安全性。
2.什么是视图
视图是另一种查看数据库中一个或多个表中的数据的方法,视图是一种虚拟表,通常作为一个或多个表的行或列的子集创建的。
视图通常用来进行的四项操作:
视图对用户的好处:
视图对开发人员的好处:
3.视图的使用
1.使用SQL语句创建视图
语法:CREATE VIEW 视图名
AS
在SQL语句命名规范中,视图一般是以view_xxx或v_xxx的样式来命名的。
2.使用SQL语句删除视图
语法: DROP VIEW [IF EXISTS] 视图名;
3.使用SQL语句查看视图数据
语法:SELECT 字段1,字段2…..FROM view_name(视图名);
视图语句:
作用:提高搜索速度,改善数据库性能
分类:普通索引、唯一索引、主键索引、复合索引、全文索引、空间索引
语法:
创建:
CREATE INDEX name ON tablename (column name,…);
删除:
DROP INDEX tablename.indexname
查看:
SHOW INDEX FROM tablename
1.备份数据库
语法:在DOS环境下运行
Mysqldump –u –h root-proot
Dbname[tbname1,tabnem2….]>filename.sql
例:
/*导出数据*/
mysqldump -u root -proot;
myschool student result>d:\bf\myschool.sql;
2.恢复数据库
语法:mysql –u username -p [dbname]
例:
/*导入数据*/
CREATE DATABASE `newMySchool`;#被导入的数据库必须存在
mysql -u root -proot newMySchool