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

1,编码实现‘刘冰冰’缴纳罚金归还图书的手续

UPDATE book SET bCount=bCount-1
WHERE bName ="红楼梦";
UPDATE reader SET lendNum=lendNum+1
WHERE rName="张无忌";
INSERT INTO penalty VALUES('7','1',NOW(),'1','4.6');
UPDATE borrow SET returnDate=NOW(returnDate);
UPDATE reader SET lendNum=lendNum-1
WHERE rName="刘冰冰";
UPDATE book SET bCount=bCount+1
WHERE bName="西游记";

2,

CREATE INDEX bName_index ON book(bName);

CREATE VIEW view_master 
    AS 
SELECT (SELECT bName FROM book WHERE book.bid = borrow.nif)AS '图书名称',
willDate AS '应归还日期',
(SELECT rName FROM reader WHERE reader.rid = borrow.rid) AS '读者姓名',
returnDate AS '实际归还日期'
FROM borrow WHERE willDate<DATE(NOW());

SELECT * FROM v_master;

CREATE VIEW view_reader
    AS
SELECT bName AS '图书名称',bCount as '馆存数',(bCount-(SELECT COUNT(nif) FROM borrow WHERE borrow.nif=book.bid))AS '可借阅数量' FROM book

SELECT * FROM view_reader

3,

mysqldump -u root -p library > D:\library_20180807.sql

CREATE DATABASE libraryDB;
USE libraryDB;
source D:\library_20180807.sql;

SELECT * FROM reader INTO OUTFILE 'd:/doucter.txt';

SELECT * FROM book INTO OUTFILE 'd:/bisner.txt;'

猜你喜欢

转载自blog.csdn.net/JiangMye/article/details/81486686