SQL 数据库操作练习:图书借阅管理系统
1、CREATE TABLE 借阅( 图书号 char(4), 读者号 char(4), 借期 datetime, 还期 datetime, 备注 char(20), PRIMARY KEY(图书号, 读者号), FOREIGN KEY(图书号) REFERENCES 图书(图书号), FOREIGN KEY(读者号) REFERENCES 读者(读者号) );
2、INSERT INTO 图书(图书号, 书名, 作者, 单价, 库存量) VALUES ('T001', 'SQL SERVER完全自学手册', '李彦', 49, 5);
3、SELECT 姓名, 工作单位 FROM 读者 WHERE 读者号 = 'R016';
4、DELETE FROM 借阅 WHERE 读者号 IN (SELECT 读者号 FROM 读者 WHERE 姓名 LIKE '王%');
5、CREATE VIEW 未还图书的读者 AS SELECT 读者.姓名, 读者.工作单位, 图书.书名, 借阅.借期 FROM 读者 JOIN 借阅 ON 读者.读者号 = 借阅.读者号 JOIN 图书 ON 借阅.图书号 = 图书.图书号 WHERE 借阅.还期 IS NULL;
6、SELECT TOP 3 读者.姓名, 读者.工作单位, COUNT() AS 借书数 FROM 借阅 JOIN 读者 ON 借阅.读者号 = 读者.读者号 GROUP BY 借阅.读者号 ORDER BY COUNT() DESC;
7、ALTER TABLE 读者 ADD CONSTRAINT default_workplace DEFAULT '华师大' FOR 工作单位;
8、CREATE FUNCTION booknum(@readerNo char(4)) RETURNS int AS BEGIN DECLARE @num int; SELECT @num = COUNT(*) FROM 借阅 WHERE 读者号 = @readerNo; RETURN @num; END;
9、CREATE PROCEDURE noback(@name char(8)) AS BEGIN SELECT 图书.书名 FROM 图书 JOIN 借阅 ON 图书.图书号 = 借阅.图书号 JOIN 读者 ON 借阅.读者号 = 读者.读者号 WHERE 读者.姓名 = @name AND 借阅.还期 IS NULL; END;
10、CREATE TRIGGER num_update ON 读者 AFTER UPDATE AS BEGIN UPDATE 借阅 SET 读者号 = inserted.读者号 FROM inserted WHERE 借阅.读者号 = deleted.读者号; END;
原文地址: https://www.cveoy.top/t/topic/oFK5 著作权归作者所有。请勿转载和采集!