Mysql第四章事物、视图、备份和恢复

xiaoxiao2021-02-28  6

CREATE DATABASE mybank; USE mybank; CREATE TABLE `bank`(           `customerName` CHAR(10),             `currentMoney` DECIMAL(10,2) ) #模拟实现转账     从张三的账户转账500元到李四的账户 INSERT INTO `bank`(`customerName`,`currentMoney`) VALUES('张三','1000'),('李四','1') BEGIN; #关闭自动提交 SET autocommit=0;  UPDATE `bank` SET `currentMoney`=`currentMoney`-500  WHERE `customerName`='张三';  UPDATE `bank` SET `currentMoney`=`currentMoney`+500  WHERE `customerName`='李四' COMMIT; BEGIN; UPDATE `bank` SET `currentMoney`=`currentMoney`-1000 WHERE `customerName`='张三'; ROLLBACK; SET autocommit=1; #事务(TRANSACTION)是作为单个逻辑工作单元执行的一系列操作 #多个操作作为一个整体向系统提交,要么都执行、要么都不执行           #事务是一个不可分割的工作逻辑单元 #事务必须具备以下四个属性,简称ACID 属性 #原子性(Atomicity)      事务是一个完整的操作,事务的各步操作是不可分的(原子的),要么都执行,要么都不执行 #一致性(Consistency)    当事务完成时,数据必须处于一致状态 #隔离性(Isolation)      并发事务之间彼此隔离、独立,它不应以任何方式依赖于或影响其他事务 #持久性(Durability)     事务完成后,它对数据库的修改被永久保持 BEGIN;   CREATE TABLE   SELECT * FROM `result`AS r,`grade`AS g,`student1`AS s   WHERE s.`studentNo`=r.`studentNo` AND s.`gradeID`=g.`gradeID` AND `studentName`='zy' COMMIT; USE python7; SELECT * FROM student1 WHERE gradeID=1 AND sex='男' #视图 CREATE VIEW view_avg AS SELECT studentName,sub.subjectName,AVG(studentResult) FROM student1 AS s INNER JOIN result AS r ON s.studentNo=r.studentNo INNER JOIN `new_subject` AS sub ON sub.subjectNo=r.subjectNo GROUP BY studentName,subjectName SELECT * FROM view_avg #创建索引 CREATE UNIQUE INDEX ix_name_unique ON student1(studentName) #创建学生表和成绩表索引 SELECT INDEX ix_student_result ON result(studentNo),student1(gradeID) SELECT UNIQUE INDEX ix_student ON student1(identityCard)   #备份和恢复 USE python7 SELECT * FROM student1 #导出 INTO OUTFILE '\student.txt' #导入 LOAD DATA INFILE '\student.txt' INTO TABLE student1
转载请注明原文地址: https://www.6miu.com/read-1900261.html

最新回复(0)