Django 后台设计

一、Mysql数据库使用

1.代码

/*
SQLyog Community v13.1.6 (64 bit)
MySQL - 8.0.11 : Database - books
*********************************************************************
*/

/*!40101 SET NAMES utf8 */;

/*!40101 SET SQL_MODE=''*/;

/*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */;
/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */;
/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */;
/*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */;
CREATE DATABASE /*!32312 IF NOT EXISTS*/`books` /*!40100 DEFAULT CHARACTER SET gbk COLLATE gbk_bin */;

USE `books`;

/*Table structure for table `book` */

CREATE TABLE `book` (
  `bookno` varchar(20) COLLATE gbk_bin NOT NULL COMMENT '书号',
  `bookname` varchar(30) COLLATE gbk_bin DEFAULT NULL COMMENT '书名',
  `author` varchar(20) COLLATE gbk_bin DEFAULT NULL COMMENT '作者',
  `publisher` varchar(10) COLLATE gbk_bin DEFAULT NULL COMMENT '出版社',
  `publishyear` year(4) DEFAULT NULL COMMENT '出版年',
  `price` decimal(5,1) DEFAULT NULL COMMENT '单价',
  `state` char(2) COLLATE gbk_bin DEFAULT '未借' COMMENT '状态',
  `bookstore` varchar(15) COLLATE gbk_bin DEFAULT NULL COMMENT '书库',
  PRIMARY KEY (`bookno`)
) ENGINE=InnoDB DEFAULT CHARSET=gbk COLLATE=gbk_bin;

/*Data for the table `book` */

insert  into `book`(`bookno`,`bookname`,`author`,`publisher`,`publishyear`,`price`,`state`,`bookstore`) values ('098789','张宇三百题','张宇','北京大学',2021,89.0,'80','借出');
insert  into `book`(`bookno`,`bookname`,`author`,`publisher`,`publishyear`,`price`,`state`,`bookstore`) values ('FT09080','Django程序开发','郑卫东','洛阳理工',2021,34.0,'借出','80');
insert  into `book`(`bookno`,`bookname`,`author`,`publisher`,`publishyear`,`price`,`state`,`bookstore`) values ('FT09081','Hive数仓技术','郑卫东','洛阳理工',2021,34.0,'借出','80');
insert  into `book`(`bookno`,`bookname`,`author`,`publisher`,`publishyear`,`price`,`state`,`bookstore`) values ('FT09087','Hadoop大数据技术','郑卫东','洛阳理工',2022,46.0,'借出','8');
insert  into `book`(`bookno`,`bookname`,`author`,`publisher`,`publishyear`,`price`,`state`,`bookstore`) values ('FT09088','Spring5 框架','刘丹','上海交通大学',2021,34.0,'借出','80');
insert  into `book`(`bookno`,`bookname`,`author`,`publisher`,`publishyear`,`price`,`state`,`bookstore`) values ('TC787','web前端','胡部','厦门大学',2022,54.2,'未借','2');
insert  into `book`(`bookno`,`bookname`,`author`,`publisher`,`publishyear`,`price`,`state`,`bookstore`) values ('TC898','MySQL数据库','张晓梅','北京邮电',2013,54.0,'未借','3');
insert  into `book`(`bookno`,`bookname`,`author`,`publisher`,`publishyear`,`price`,`state`,`bookstore`) values ('TC909','Goland语言','徐俊','西安交大',2018,43.5,'未借','6');
insert  into `book`(`bookno`,`bookname`,`author`,`publisher`,`publishyear`,`price`,`state`,`bookstore`) values ('TH008','HBase 教程','光头强','人民邮电出版社',2021,37.0,'未借','6');
insert  into `book`(`bookno`,`bookname`,`author`,`publisher`,`publishyear`,`price`,`state`,`bookstore`) values ('TH009','MongoDB 教程','牛爷爷','南开大学',2021,37.0,'未借','4');
insert  into `book`(`bookno`,`bookname`,`author`,`publisher`,`publishyear`,`price`,`state`,`bookstore`) values ('TH019','MongoDB 教程','李宁','南开大学',2021,37.0,'未借','5');
insert  into `book`(`bookno`,`bookname`,`author`,`publisher`,`publishyear`,`price`,`state`,`bookstore`) values ('TN123','电路','童诗白','电子',2005,37.0,'未借','3');
insert  into `book`(`bookno`,`bookname`,`author`,`publisher`,`publishyear`,`price`,`state`,`bookstore`) values ('TN124','kettle数据清洗','张美玲','东北大学',2020,21.3,'未借','3');
insert  into `book`(`bookno`,`bookname`,`author`,`publisher`,`publishyear`,`price`,`state`,`bookstore`) values ('TN125','网络API','李吉妮','南方科技大学',2021,32.4,'未借','4');
insert  into `book`(`bookno`,`bookname`,`author`,`publisher`,`publishyear`,`price`,`state`,`bookstore`) values ('TN126','C语言基础','黄尊刚','中南大学',2020,23.1,'未借','5');
insert  into `book`(`bookno`,`bookname`,`author`,`publisher`,`publishyear`,`price`,`state`,`bookstore`) values ('TN128','电子信息','童诗白','电子',2015,27.0,'未借','5');
insert  into `book`(`bookno`,`bookname`,`author`,`publisher`,`publishyear`,`price`,`state`,`bookstore`) values ('TP273-3','云计算','刘鹏','电子工业',2018,39.0,'借出','2');
insert  into `book`(`bookno`,`bookname`,`author`,`publisher`,`publishyear`,`price`,`state`,`bookstore`) values ('TP273-342','SQL SERVER 2008','王利','电子',2009,32.0,'未借','2');
insert  into `book`(`bookno`,`bookname`,`author`,`publisher`,`publishyear`,`price`,`state`,`bookstore`) values ('TP30101','数据库','高尚','电子',2009,28.0,'借出','2');
insert  into `book`(`bookno`,`bookname`,`author`,`publisher`,`publishyear`,`price`,`state`,`bookstore`) values ('TP388','计算机网络','张明','清华大学',2009,33.0,'未借','1');
insert  into `book`(`bookno`,`bookname`,`author`,`publisher`,`publishyear`,`price`,`state`,`bookstore`) values ('TP458','数据结构','王建设','清华大学',NULL,NULL,'未借','1');
insert  into `book`(`bookno`,`bookname`,`author`,`publisher`,`publishyear`,`price`,`state`,`bookstore`) values ('TP652','三毛流浪记','张乐平','文化',1953,25.0,'借出','5');
insert  into `book`(`bookno`,`bookname`,`author`,`publisher`,`publishyear`,`price`,`state`,`bookstore`) values ('TP987','数据库系统概论','林美','高教',2008,45.0,'未借','2');
insert  into `book`(`bookno`,`bookname`,`author`,`publisher`,`publishyear`,`price`,`state`,`bookstore`) values ('TP999','软件工程','张海','清华大学',NULL,NULL,'未借','0');
insert  into `book`(`bookno`,`bookname`,`author`,`publisher`,`publishyear`,`price`,`state`,`bookstore`) values ('TY187','云计算','李宁','人民教育出版社',2019,18.0,'借出','9');
insert  into `book`(`bookno`,`bookname`,`author`,`publisher`,`publishyear`,`price`,`state`,`bookstore`) values ('TY787','计算机信息共享','张三','蒙古教育',2021,18.0,'借出','7');
insert  into `book`(`bookno`,`bookname`,`author`,`publisher`,`publishyear`,`price`,`state`,`bookstore`) values ('TY799','云计算','张三','人民教育出版社',2022,18.0,'借出','4');

/*Table structure for table `borrow` */

CREATE TABLE `borrow` (
  `readerno` varchar(10) COLLATE gbk_bin NOT NULL COMMENT '读者编号',
  `bookno` varchar(20) COLLATE gbk_bin NOT NULL COMMENT '书号',
  `borrowdate` date NOT NULL COMMENT '借出日期',
  `returndate` date DEFAULT NULL COMMENT '还书日期',
  PRIMARY KEY (`readerno`,`bookno`,`borrowdate`),
  CONSTRAINT `borrow_ibfk_1` FOREIGN KEY (`readerno`) REFERENCES `reader` (`readerno`)
) ENGINE=InnoDB DEFAULT CHARSET=gbk COLLATE=gbk_bin;

/*Data for the table `borrow` */

insert  into `borrow`(`readerno`,`bookno`,`borrowdate`,`returndate`) values ('000','TP999','2022-11-12',NULL);
insert  into `borrow`(`readerno`,`bookno`,`borrowdate`,`returndate`) values ('003002','FT09087','2022-11-21',NULL);
insert  into `borrow`(`readerno`,`bookno`,`borrowdate`,`returndate`) values ('003002','TC787','2022-11-27',NULL);
insert  into `borrow`(`readerno`,`bookno`,`borrowdate`,`returndate`) values ('003002','TC898','2022-11-14',NULL);
insert  into `borrow`(`readerno`,`bookno`,`borrowdate`,`returndate`) values ('003002','TH009','2022-11-14',NULL);
insert  into `borrow`(`readerno`,`bookno`,`borrowdate`,`returndate`) values ('003002','TY787','2022-11-21',NULL);
insert  into `borrow`(`readerno`,`bookno`,`borrowdate`,`returndate`) values ('004001','TC909','2022-11-12',NULL);
insert  into `borrow`(`readerno`,`bookno`,`borrowdate`,`returndate`) values ('004001','TH019','2022-11-12',NULL);
insert  into `borrow`(`readerno`,`bookno`,`borrowdate`,`returndate`) values ('004002','TP30101','2018-07-07','2018-11-07');
insert  into `borrow`(`readerno`,`bookno`,`borrowdate`,`returndate`) values ('111','TP273-3','2018-09-28','2019-03-28');
insert  into `borrow`(`readerno`,`bookno`,`borrowdate`,`returndate`) values ('9090','TC787','2022-12-17',NULL);
insert  into `borrow`(`readerno`,`bookno`,`borrowdate`,`returndate`) values ('VY123','TC787','2020-09-19','2020-09-22');
insert  into `borrow`(`readerno`,`bookno`,`borrowdate`,`returndate`) values ('VY124','TC999','2022-09-18','2022-09-20');
insert  into `borrow`(`readerno`,`bookno`,`borrowdate`,`returndate`) values ('gly03','TC787','2022-09-10','2022-09-12');
insert  into `borrow`(`readerno`,`bookno`,`borrowdate`,`returndate`) values ('gly03','TC787','2022-09-11','2022-09-12');

/*Table structure for table `reader` */

CREATE TABLE `reader` (
  `readerno` varchar(10) COLLATE gbk_bin NOT NULL COMMENT '读者编号',
  `readertype` char(2) COLLATE gbk_bin NOT NULL COMMENT '读者类型',
  `borrowed_num` tinyint(3) unsigned DEFAULT NULL COMMENT '已借书数',
  `borrowed_limit` tinyint(3) unsigned DEFAULT NULL COMMENT '最多借书数',
  `readername` varchar(15) COLLATE gbk_bin DEFAULT NULL COMMENT '读者姓名',
  `readerdept` varchar(15) COLLATE gbk_bin DEFAULT NULL COMMENT '系别',
  `readerpw` varchar(20) COLLATE gbk_bin DEFAULT NULL,
  PRIMARY KEY (`readerno`)
) ENGINE=InnoDB DEFAULT CHARSET=gbk COLLATE=gbk_bin;

/*Data for the table `reader` */

insert  into `reader`(`readerno`,`readertype`,`borrowed_num`,`borrowed_limit`,`readername`,`readerdept`,`readerpw`) values ('000','学生',2,3,'张三','电气','123');
insert  into `reader`(`readerno`,`readertype`,`borrowed_num`,`borrowed_limit`,`readername`,`readerdept`,`readerpw`) values ('003002','学生',5,7,'肖鹏','智能制造','123');
insert  into `reader`(`readerno`,`readertype`,`borrowed_num`,`borrowed_limit`,`readername`,`readerdept`,`readerpw`) values ('004001','学生',2,2,'李笑笑','计算机','123');
insert  into `reader`(`readerno`,`readertype`,`borrowed_num`,`borrowed_limit`,`readername`,`readerdept`,`readerpw`) values ('004002','学生',1,4,'张大卫','计算机','123');
insert  into `reader`(`readerno`,`readertype`,`borrowed_num`,`borrowed_limit`,`readername`,`readerdept`,`readerpw`) values ('111','教师',1,10,'王闵','计算机','123');
insert  into `reader`(`readerno`,`readertype`,`borrowed_num`,`borrowed_limit`,`readername`,`readerdept`,`readerpw`) values ('222','教师',0,10,'高鸿','计算机','123');
insert  into `reader`(`readerno`,`readertype`,`borrowed_num`,`borrowed_limit`,`readername`,`readerdept`,`readerpw`) values ('9090','学生',1,9,'李四','智能制造','123');
insert  into `reader`(`readerno`,`readertype`,`borrowed_num`,`borrowed_limit`,`readername`,`readerdept`,`readerpw`) values ('VY100','学生',0,10,'祁云','计算机应用','123');
insert  into `reader`(`readerno`,`readertype`,`borrowed_num`,`borrowed_limit`,`readername`,`readerdept`,`readerpw`) values ('VY101','教师',0,10,'杨红霞','计算机应用','123');
insert  into `reader`(`readerno`,`readertype`,`borrowed_num`,`borrowed_limit`,`readername`,`readerdept`,`readerpw`) values ('VY102','学生',0,10,'杨瑞','软件工程','123');
insert  into `reader`(`readerno`,`readertype`,`borrowed_num`,`borrowed_limit`,`readername`,`readerdept`,`readerpw`) values ('VY103','学生',0,10,'蒋志强','软件工程','123');
insert  into `reader`(`readerno`,`readertype`,`borrowed_num`,`borrowed_limit`,`readername`,`readerdept`,`readerpw`) values ('VY104','学生',0,10,'李鹏','物联网','123');
insert  into `reader`(`readerno`,`readertype`,`borrowed_num`,`borrowed_limit`,`readername`,`readerdept`,`readerpw`) values ('VY105','教师',0,10,'商勇','网络工程','123');
insert  into `reader`(`readerno`,`readertype`,`borrowed_num`,`borrowed_limit`,`readername`,`readerdept`,`readerpw`) values ('VY106','学生',0,10,'张宁','物联网','123');
insert  into `reader`(`readerno`,`readertype`,`borrowed_num`,`borrowed_limit`,`readername`,`readerdept`,`readerpw`) values ('VY107','学生',0,10,'张玉华','物联网','123');
insert  into `reader`(`readerno`,`readertype`,`borrowed_num`,`borrowed_limit`,`readername`,`readerdept`,`readerpw`) values ('VY108','学生',0,10,'吕军','计算机应用','123');
insert  into `reader`(`readerno`,`readertype`,`borrowed_num`,`borrowed_limit`,`readername`,`readerdept`,`readerpw`) values ('VY109','教师',0,10,'张桂荣','物联网','123');
insert  into `reader`(`readerno`,`readertype`,`borrowed_num`,`borrowed_limit`,`readername`,`readerdept`,`readerpw`) values ('VY110','教师',0,10,'龚秀荣','网络工程','123');
insert  into `reader`(`readerno`,`readertype`,`borrowed_num`,`borrowed_limit`,`readername`,`readerdept`,`readerpw`) values ('VY111','学生',0,10,'朱建华','软件工程','123');
insert  into `reader`(`readerno`,`readertype`,`borrowed_num`,`borrowed_limit`,`readername`,`readerdept`,`readerpw`) values ('VY112','教师',0,10,'郑岩','网络工程','123');
insert  into `reader`(`readerno`,`readertype`,`borrowed_num`,`borrowed_limit`,`readername`,`readerdept`,`readerpw`) values ('VY113','学生',0,10,'姚明','计算机应用','123');
insert  into `reader`(`readerno`,`readertype`,`borrowed_num`,`borrowed_limit`,`readername`,`readerdept`,`readerpw`) values ('VY114','教师',0,10,'黄桂香','软件工程','123');
insert  into `reader`(`readerno`,`readertype`,`borrowed_num`,`borrowed_limit`,`readername`,`readerdept`,`readerpw`) values ('VY115','学生',0,10,'赵杰','软件工程','123');
insert  into `reader`(`readerno`,`readertype`,`borrowed_num`,`borrowed_limit`,`readername`,`readerdept`,`readerpw`) values ('VY116','学生',0,10,'袁斌','人工智能与云计算','123');
insert  into `reader`(`readerno`,`readertype`,`borrowed_num`,`borrowed_limit`,`readername`,`readerdept`,`readerpw`) values ('VY117','学生',0,10,'魏娟','人工智能与云计算','123');
insert  into `reader`(`readerno`,`readertype`,`borrowed_num`,`borrowed_limit`,`readername`,`readerdept`,`readerpw`) values ('VY118','学生',0,10,'黄帆','网络工程','123');
insert  into `reader`(`readerno`,`readertype`,`borrowed_num`,`borrowed_limit`,`readername`,`readerdept`,`readerpw`) values ('VY119','学生',0,10,'李桂花','数据科学与大数据','123');
insert  into `reader`(`readerno`,`readertype`,`borrowed_num`,`borrowed_limit`,`readername`,`readerdept`,`readerpw`) values ('VY120','教师',0,10,'傅雪','软件工程','123');
insert  into `reader`(`readerno`,`readertype`,`borrowed_num`,`borrowed_limit`,`readername`,`readerdept`,`readerpw`) values ('VY121','学生',0,10,'王峰','物联网','123');
insert  into `reader`(`readerno`,`readertype`,`borrowed_num`,`borrowed_limit`,`readername`,`readerdept`,`readerpw`) values ('VY122','教师',0,10,'王旭','物联网','123');
insert  into `reader`(`readerno`,`readertype`,`borrowed_num`,`borrowed_limit`,`readername`,`readerdept`,`readerpw`) values ('VY123','教师',1,9,'Lisa','机械工程','123');
insert  into `reader`(`readerno`,`readertype`,`borrowed_num`,`borrowed_limit`,`readername`,`readerdept`,`readerpw`) values ('VY124','教师',1,9,'刘红霞','计算机应用','123');
insert  into `reader`(`readerno`,`readertype`,`borrowed_num`,`borrowed_limit`,`readername`,`readerdept`,`readerpw`) values ('VY125','教师',0,10,'袁华','软件工程','123');
insert  into `reader`(`readerno`,`readertype`,`borrowed_num`,`borrowed_limit`,`readername`,`readerdept`,`readerpw`) values ('VY126','教师',0,10,'黄云','计算机应用','123');
insert  into `reader`(`readerno`,`readertype`,`borrowed_num`,`borrowed_limit`,`readername`,`readerdept`,`readerpw`) values ('VY127','教师',0,10,'张兵','软件工程','123');
insert  into `reader`(`readerno`,`readertype`,`borrowed_num`,`borrowed_limit`,`readername`,`readerdept`,`readerpw`) values ('VY128','学生',0,10,'龚玉珍','数据科学与大数据','123');
insert  into `reader`(`readerno`,`readertype`,`borrowed_num`,`borrowed_limit`,`readername`,`readerdept`,`readerpw`) values ('VY129','学生',0,10,'郑帆','软件工程','123');
insert  into `reader`(`readerno`,`readertype`,`borrowed_num`,`borrowed_limit`,`readername`,`readerdept`,`readerpw`) values ('VY130','学生',0,10,'王桂英','软件工程','123');
insert  into `reader`(`readerno`,`readertype`,`borrowed_num`,`borrowed_limit`,`readername`,`readerdept`,`readerpw`) values ('VY131','学生',0,10,'林玉兰','网络工程','123');
insert  into `reader`(`readerno`,`readertype`,`borrowed_num`,`borrowed_limit`,`readername`,`readerdept`,`readerpw`) values ('VY132','学生',0,10,'杜颖','数据科学与大数据','123');
insert  into `reader`(`readerno`,`readertype`,`borrowed_num`,`borrowed_limit`,`readername`,`readerdept`,`readerpw`) values ('VY133','学生',0,10,'赵洋','物联网','123');
insert  into `reader`(`readerno`,`readertype`,`borrowed_num`,`borrowed_limit`,`readername`,`readerdept`,`readerpw`) values ('VY134','教师',0,10,'信淑华','数据科学与大数据','123');
insert  into `reader`(`readerno`,`readertype`,`borrowed_num`,`borrowed_limit`,`readername`,`readerdept`,`readerpw`) values ('VY135','学生',0,10,'江玉华','物联网','123');
insert  into `reader`(`readerno`,`readertype`,`borrowed_num`,`borrowed_limit`,`readername`,`readerdept`,`readerpw`) values ('VY136','学生',0,10,'赵彬','软件工程','123');
insert  into `reader`(`readerno`,`readertype`,`borrowed_num`,`borrowed_limit`,`readername`,`readerdept`,`readerpw`) values ('VY137','学生',0,10,'张磊','网络工程','123');
insert  into `reader`(`readerno`,`readertype`,`borrowed_num`,`borrowed_limit`,`readername`,`readerdept`,`readerpw`) values ('VY138','学生',0,10,'丁秀英','软件工程','123');
insert  into `reader`(`readerno`,`readertype`,`borrowed_num`,`borrowed_limit`,`readername`,`readerdept`,`readerpw`) values ('VY139','教师',0,10,'朱伟','网络工程','123');
insert  into `reader`(`readerno`,`readertype`,`borrowed_num`,`borrowed_limit`,`readername`,`readerdept`,`readerpw`) values ('VY140','学生',0,10,'马小红','网络工程','123');
insert  into `reader`(`readerno`,`readertype`,`borrowed_num`,`borrowed_limit`,`readername`,`readerdept`,`readerpw`) values ('VY141','学生',0,10,'朱志强','数据科学与大数据','123');
insert  into `reader`(`readerno`,`readertype`,`borrowed_num`,`borrowed_limit`,`readername`,`readerdept`,`readerpw`) values ('VY142','学生',0,10,'倪宁','软件工程','123');
insert  into `reader`(`readerno`,`readertype`,`borrowed_num`,`borrowed_limit`,`readername`,`readerdept`,`readerpw`) values ('VY143','学生',0,10,'卫英','网络工程','123');
insert  into `reader`(`readerno`,`readertype`,`borrowed_num`,`borrowed_limit`,`readername`,`readerdept`,`readerpw`) values ('VY144','学生',0,10,'周超','软件工程','123');
insert  into `reader`(`readerno`,`readertype`,`borrowed_num`,`borrowed_limit`,`readername`,`readerdept`,`readerpw`) values ('VY145','教师',0,10,'邱桂芝','数据科学与大数据','123');
insert  into `reader`(`readerno`,`readertype`,`borrowed_num`,`borrowed_limit`,`readername`,`readerdept`,`readerpw`) values ('VY146','教师',0,10,'黄桂珍','数据科学与大数据','123');
insert  into `reader`(`readerno`,`readertype`,`borrowed_num`,`borrowed_limit`,`readername`,`readerdept`,`readerpw`) values ('VY147','学生',0,10,'刘桂花','网络工程','123');
insert  into `reader`(`readerno`,`readertype`,`borrowed_num`,`borrowed_limit`,`readername`,`readerdept`,`readerpw`) values ('VY148','学生',0,10,'尚琴','软件工程','123');
insert  into `reader`(`readerno`,`readertype`,`borrowed_num`,`borrowed_limit`,`readername`,`readerdept`,`readerpw`) values ('VY149','学生',0,10,'许刚','网络工程','123');
insert  into `reader`(`readerno`,`readertype`,`borrowed_num`,`borrowed_limit`,`readername`,`readerdept`,`readerpw`) values ('VY150','学生',0,10,'林斌','人工智能与云计算','123');
insert  into `reader`(`readerno`,`readertype`,`borrowed_num`,`borrowed_limit`,`readername`,`readerdept`,`readerpw`) values ('VY151','教师',0,10,'汪燕','人工智能与云计算','123');
insert  into `reader`(`readerno`,`readertype`,`borrowed_num`,`borrowed_limit`,`readername`,`readerdept`,`readerpw`) values ('VY152','学生',0,10,'吴敏','计算机应用','123');
insert  into `reader`(`readerno`,`readertype`,`borrowed_num`,`borrowed_limit`,`readername`,`readerdept`,`readerpw`) values ('VY153','教师',0,10,'李桂兰','网络工程','123');
insert  into `reader`(`readerno`,`readertype`,`borrowed_num`,`borrowed_limit`,`readername`,`readerdept`,`readerpw`) values ('VY154','学生',0,10,'卢秀芳','计算机应用','123');
insert  into `reader`(`readerno`,`readertype`,`borrowed_num`,`borrowed_limit`,`readername`,`readerdept`,`readerpw`) values ('VY155','学生',0,10,'张辉','物联网','123');
insert  into `reader`(`readerno`,`readertype`,`borrowed_num`,`borrowed_limit`,`readername`,`readerdept`,`readerpw`) values ('VY156','学生',0,10,'鞠云','数据科学与大数据','123');
insert  into `reader`(`readerno`,`readertype`,`borrowed_num`,`borrowed_limit`,`readername`,`readerdept`,`readerpw`) values ('VY157','学生',0,10,'唐雪梅','软件工程','123');
insert  into `reader`(`readerno`,`readertype`,`borrowed_num`,`borrowed_limit`,`readername`,`readerdept`,`readerpw`) values ('VY158','学生',0,10,'李欢','数据科学与大数据','123');
insert  into `reader`(`readerno`,`readertype`,`borrowed_num`,`borrowed_limit`,`readername`,`readerdept`,`readerpw`) values ('VY159','教师',0,10,'王玉华','网络工程','123');
insert  into `reader`(`readerno`,`readertype`,`borrowed_num`,`borrowed_limit`,`readername`,`readerdept`,`readerpw`) values ('VY160','教师',0,10,'李晶','数据科学与大数据','123');
insert  into `reader`(`readerno`,`readertype`,`borrowed_num`,`borrowed_limit`,`readername`,`readerdept`,`readerpw`) values ('VY161','学生',0,10,'孙鑫','数据科学与大数据','123');
insert  into `reader`(`readerno`,`readertype`,`borrowed_num`,`borrowed_limit`,`readername`,`readerdept`,`readerpw`) values ('VY162','学生',0,10,'陈宁','软件工程','123');
insert  into `reader`(`readerno`,`readertype`,`borrowed_num`,`borrowed_limit`,`readername`,`readerdept`,`readerpw`) values ('VY163','教师',0,10,'马霞','人工智能与云计算','123');
insert  into `reader`(`readerno`,`readertype`,`borrowed_num`,`borrowed_limit`,`readername`,`readerdept`,`readerpw`) values ('VY164','学生',0,10,'王杨','物联网','123');
insert  into `reader`(`readerno`,`readertype`,`borrowed_num`,`borrowed_limit`,`readername`,`readerdept`,`readerpw`) values ('VY165','教师',0,10,'唐雪梅','网络工程','123');
insert  into `reader`(`readerno`,`readertype`,`borrowed_num`,`borrowed_limit`,`readername`,`readerdept`,`readerpw`) values ('VY166','教师',0,10,'都红梅','计算机应用','123');
insert  into `reader`(`readerno`,`readertype`,`borrowed_num`,`borrowed_limit`,`readername`,`readerdept`,`readerpw`) values ('VY167','教师',0,10,'左磊','物联网','123');
insert  into `reader`(`readerno`,`readertype`,`borrowed_num`,`borrowed_limit`,`readername`,`readerdept`,`readerpw`) values ('VY168','教师',0,10,'施玉梅','软件工程','123');
insert  into `reader`(`readerno`,`readertype`,`borrowed_num`,`borrowed_limit`,`readername`,`readerdept`,`readerpw`) values ('VY169','学生',0,10,'罗英','软件工程','123');
insert  into `reader`(`readerno`,`readertype`,`borrowed_num`,`borrowed_limit`,`readername`,`readerdept`,`readerpw`) values ('VY170','教师',0,10,'逯红梅','网络工程','123');
insert  into `reader`(`readerno`,`readertype`,`borrowed_num`,`borrowed_limit`,`readername`,`readerdept`,`readerpw`) values ('VY171','学生',0,10,'朱海燕','计算机应用','123');
insert  into `reader`(`readerno`,`readertype`,`borrowed_num`,`borrowed_limit`,`readername`,`readerdept`,`readerpw`) values ('VY172','学生',0,10,'兰晨','网络工程','123');
insert  into `reader`(`readerno`,`readertype`,`borrowed_num`,`borrowed_limit`,`readername`,`readerdept`,`readerpw`) values ('VY173','教师',0,10,'吴淑华','人工智能与云计算','123');
insert  into `reader`(`readerno`,`readertype`,`borrowed_num`,`borrowed_limit`,`readername`,`readerdept`,`readerpw`) values ('VY174','教师',0,10,'王辉','网络工程','123');
insert  into `reader`(`readerno`,`readertype`,`borrowed_num`,`borrowed_limit`,`readername`,`readerdept`,`readerpw`) values ('VY175','学生',0,10,'王建','计算机应用','123');
insert  into `reader`(`readerno`,`readertype`,`borrowed_num`,`borrowed_limit`,`readername`,`readerdept`,`readerpw`) values ('VY176','学生',0,10,'禹桂英','人工智能与云计算','123');
insert  into `reader`(`readerno`,`readertype`,`borrowed_num`,`borrowed_limit`,`readername`,`readerdept`,`readerpw`) values ('VY177','学生',0,10,'任勇','人工智能与云计算','123');
insert  into `reader`(`readerno`,`readertype`,`borrowed_num`,`borrowed_limit`,`readername`,`readerdept`,`readerpw`) values ('VY178','教师',0,10,'邰秀兰','物联网','123');
insert  into `reader`(`readerno`,`readertype`,`borrowed_num`,`borrowed_limit`,`readername`,`readerdept`,`readerpw`) values ('VY179','学生',0,10,'杜旭','数据科学与大数据','123');
insert  into `reader`(`readerno`,`readertype`,`borrowed_num`,`borrowed_limit`,`readername`,`readerdept`,`readerpw`) values ('VY180','教师',0,10,'宋丽','软件工程','123');
insert  into `reader`(`readerno`,`readertype`,`borrowed_num`,`borrowed_limit`,`readername`,`readerdept`,`readerpw`) values ('VY181','教师',0,10,'胥佳','物联网','123');
insert  into `reader`(`readerno`,`readertype`,`borrowed_num`,`borrowed_limit`,`readername`,`readerdept`,`readerpw`) values ('VY182','教师',0,10,'邢平','数据科学与大数据','123');
insert  into `reader`(`readerno`,`readertype`,`borrowed_num`,`borrowed_limit`,`readername`,`readerdept`,`readerpw`) values ('VY183','学生',0,10,'李宇','人工智能与云计算','123');
insert  into `reader`(`readerno`,`readertype`,`borrowed_num`,`borrowed_limit`,`readername`,`readerdept`,`readerpw`) values ('VY184','学生',0,10,'何鹏','网络工程','123');
insert  into `reader`(`readerno`,`readertype`,`borrowed_num`,`borrowed_limit`,`readername`,`readerdept`,`readerpw`) values ('VY185','教师',0,10,'段桂兰','数据科学与大数据','123');
insert  into `reader`(`readerno`,`readertype`,`borrowed_num`,`borrowed_limit`,`readername`,`readerdept`,`readerpw`) values ('VY186','教师',0,10,'张丹','人工智能与云计算','123');
insert  into `reader`(`readerno`,`readertype`,`borrowed_num`,`borrowed_limit`,`readername`,`readerdept`,`readerpw`) values ('VY187','教师',0,10,'许秀兰','物联网','123');
insert  into `reader`(`readerno`,`readertype`,`borrowed_num`,`borrowed_limit`,`readername`,`readerdept`,`readerpw`) values ('VY188','教师',0,10,'杨英','计算机应用','123');
insert  into `reader`(`readerno`,`readertype`,`borrowed_num`,`borrowed_limit`,`readername`,`readerdept`,`readerpw`) values ('VY189','教师',0,10,'曾霞','数据科学与大数据','321');
insert  into `reader`(`readerno`,`readertype`,`borrowed_num`,`borrowed_limit`,`readername`,`readerdept`,`readerpw`) values ('VY190','学生',0,10,'陈建国','数据科学与大数据','123');
insert  into `reader`(`readerno`,`readertype`,`borrowed_num`,`borrowed_limit`,`readername`,`readerdept`,`readerpw`) values ('VY191','教师',0,10,'郭秀梅','人工智能与云计算','123');
insert  into `reader`(`readerno`,`readertype`,`borrowed_num`,`borrowed_limit`,`readername`,`readerdept`,`readerpw`) values ('VY192','学生',0,10,'莫磊','数据科学与大数据','123');
insert  into `reader`(`readerno`,`readertype`,`borrowed_num`,`borrowed_limit`,`readername`,`readerdept`,`readerpw`) values ('VY193','学生',0,10,'蔡瑞','计算机应用','123');
insert  into `reader`(`readerno`,`readertype`,`borrowed_num`,`borrowed_limit`,`readername`,`readerdept`,`readerpw`) values ('VY194','教师',0,10,'王宇','数据科学与大数据','123');
insert  into `reader`(`readerno`,`readertype`,`borrowed_num`,`borrowed_limit`,`readername`,`readerdept`,`readerpw`) values ('VY195','学生',0,10,'陈波','物联网','123');
insert  into `reader`(`readerno`,`readertype`,`borrowed_num`,`borrowed_limit`,`readername`,`readerdept`,`readerpw`) values ('VY196','教师',0,10,'陈玉梅','计算机应用','123');
insert  into `reader`(`readerno`,`readertype`,`borrowed_num`,`borrowed_limit`,`readername`,`readerdept`,`readerpw`) values ('VY197','学生',0,10,'李坤','计算机应用','123');
insert  into `reader`(`readerno`,`readertype`,`borrowed_num`,`borrowed_limit`,`readername`,`readerdept`,`readerpw`) values ('VY198','学生',0,10,'李小珍','电气工程','lixiaozhen123');
insert  into `reader`(`readerno`,`readertype`,`borrowed_num`,`borrowed_limit`,`readername`,`readerdept`,`readerpw`) values ('VY199','教师',0,10,'荆桂香','计算机应用','123');
insert  into `reader`(`readerno`,`readertype`,`borrowed_num`,`borrowed_limit`,`readername`,`readerdept`,`readerpw`) values ('VY201','',10,0,'张晓梅','',NULL);
insert  into `reader`(`readerno`,`readertype`,`borrowed_num`,`borrowed_limit`,`readername`,`readerdept`,`readerpw`) values ('VY210','学生',0,10,'李四','数据科学与大数据技术','123');
insert  into `reader`(`readerno`,`readertype`,`borrowed_num`,`borrowed_limit`,`readername`,`readerdept`,`readerpw`) values ('gly01','教师',1,9,'肖鹏','数据科学与大数据技术','xp20021225');
insert  into `reader`(`readerno`,`readertype`,`borrowed_num`,`borrowed_limit`,`readername`,`readerdept`,`readerpw`) values ('gly02','教师',0,10,'赵','readerdept','000');
insert  into `reader`(`readerno`,`readertype`,`borrowed_num`,`borrowed_limit`,`readername`,`readerdept`,`readerpw`) values ('gly03','教师',2,8,'root','计算机','000');
insert  into `reader`(`readerno`,`readertype`,`borrowed_num`,`borrowed_limit`,`readername`,`readerdept`,`readerpw`) values ('gly05','学生',0,10,'熊大','计算机','000');
insert  into `reader`(`readerno`,`readertype`,`borrowed_num`,`borrowed_limit`,`readername`,`readerdept`,`readerpw`) values ('gly8787','学生',0,10,'翠花','计算机','000');
insert  into `reader`(`readerno`,`readertype`,`borrowed_num`,`borrowed_limit`,`readername`,`readerdept`,`readerpw`) values ('xiaopeng','学生',10,0,'x','计算机','8989');

/*Table structure for table `save` */

CREATE TABLE `save` (
  `readerno` varchar(24) COLLATE utf8_bin NOT NULL,
  `bookno` varchar(24) COLLATE utf8_bin NOT NULL,
  `save_time` date DEFAULT NULL,
  `evaluate` char(200) COLLATE utf8_bin DEFAULT NULL,
  PRIMARY KEY (`readerno`,`bookno`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin;

/*Data for the table `save` */

insert  into `save`(`readerno`,`bookno`,`save_time`,`evaluate`) values ('000','TY187','2022-12-23',NULL);
insert  into `save`(`readerno`,`bookno`,`save_time`,`evaluate`) values ('003002','TC787','2022-12-23','web前端是一本很好的书,它介绍了html,css,js');
insert  into `save`(`readerno`,`bookno`,`save_time`,`evaluate`) values ('003002','TN123','2022-11-13','是一本适合学习硬件的书');
insert  into `save`(`readerno`,`bookno`,`save_time`,`evaluate`) values ('003002','TP273-342','2022-11-13','不错不错我很爱');
insert  into `save`(`readerno`,`bookno`,`save_time`,`evaluate`) values ('003002','TP458','2022-11-14','这本书简要表现出来了数据结构的基本内容');
insert  into `save`(`readerno`,`bookno`,`save_time`,`evaluate`) values ('VY197','TH008','2021-11-25','一本很好的书,我学会了很多');
insert  into `save`(`readerno`,`bookno`,`save_time`,`evaluate`) values ('gly03','TC787','2021-12-25',NULL);

/*Table structure for table `user` */

CREATE TABLE `user` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `username` varchar(32) NOT NULL COMMENT '用户名称',
  `birthday` datetime DEFAULT NULL COMMENT '生日',
  `sex` char(1) DEFAULT NULL COMMENT '性别',
  `address` varchar(256) DEFAULT NULL COMMENT '地址',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

/*Data for the table `user` */

/*Table structure for table `getread` */

DROP TABLE IF EXISTS `getread`;

/*!50001 CREATE TABLE  `getread`(
 `readerno` varchar(10) ,
 `readername` varchar(15) ,
 `readerdept` varchar(15) ,
 `borrowed_num` tinyint(3) unsigned ,
 `borrowed_limit` tinyint(3) unsigned ,
 `readertype` char(2) ,
 `bookno` varchar(20) ,
 `bookname` varchar(30) ,
 `borrowdate` date ,
 `returndate` date ,
 `price` decimal(5,1) 
)*/;

/*Table structure for table `getsave` */

DROP TABLE IF EXISTS `getsave`;

/*!50001 CREATE TABLE  `getsave`(
 `readerno` varchar(10) ,
 `readername` varchar(15) ,
 `bookno` varchar(20) ,
 `bookname` varchar(30) ,
 `price` decimal(5,1) ,
 `evaluate` char(200) ,
 `save_time` date 
)*/;

/*View structure for view getread */

/*!50001 DROP TABLE IF EXISTS `getread` */;
/*!50001 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `getread` AS select `r`.`readerno` AS `readerno`,`r`.`readername` AS `readername`,`r`.`readerdept` AS `readerdept`,`r`.`borrowed_num` AS `borrowed_num`,`r`.`borrowed_limit` AS `borrowed_limit`,`r`.`readertype` AS `readertype`,`b`.`bookno` AS `bookno`,`b`.`bookname` AS `bookname`,`bo`.`borrowdate` AS `borrowdate`,`bo`.`returndate` AS `returndate`,`b`.`price` AS `price` from ((`reader` `r` left join `borrow` `bo` on((`r`.`readerno` = `bo`.`readerno`))) left join `book` `b` on((`b`.`bookno` = `bo`.`bookno`))) */;

/*View structure for view getsave */

/*!50001 DROP TABLE IF EXISTS `getsave` */;
/*!50001 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `getsave` AS select `r`.`readerno` AS `readerno`,`r`.`readername` AS `readername`,`b`.`bookno` AS `bookno`,`b`.`bookname` AS `bookname`,`b`.`price` AS `price`,`s`.`evaluate` AS `evaluate`,`s`.`save_time` AS `save_time` from ((`reader` `r` left join `save` `s` on((convert(`r`.`readerno` using utf8) = `s`.`readerno`))) left join `book` `b` on((`s`.`bookno` = convert(`b`.`bookno` using utf8)))) */;

/*!40101 SET SQL_MODE=@OLD_SQL_MODE */;
/*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */;
/*!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS */;
/*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */;

 2.数据库book表展示

二、Django Dao业务层 

1.项目结构-在DaoMapper创建doainfo文件

 

2.使用PyMySql操作数据, 使用类mySqlCon编写相应程序

import pymysql as pm

# 数据库配置
con = pm.connect (
    host='localhost',
    user='root',
    password='123456',
    db='books',
    charset='utf8',
)
dbsql = {
    "select_book": "select * from books.book",
    # "select_book_data": f"SELECT * FROM book WHERE {0} LIKE CONCAT('%',{1},'%')".format(range,value),
    "login":"select * from reader r where r.readerno= %s and r.readerpw = %s"
}

cur = con.cursor ()
class mySqlCon():
     def exe(self):
         cur.execute("select * from book")
         return cur

     def login(self,no,pwd):
         try:
             rs=cur.execute(dbsql["login"],[no,pwd])
             if rs ==1:return True
             else:return False
         except:
             return '加载失败,请10s钟再试'

     def SelectByRange(self,range,value):
        str=f"SELECT * FROM book b WHERE b.{range} LIKE concat ('%','{value}','%')"
        try:
            cur.execute(str)
            # print(str)
            return cur
        except:
            return None


     def insert_book(self, no, name, author, publisher, year, price, num, state):
         sql0 = 'SELECT * FROM `book`WHERE `bookno`=%s AND `bookname`=%s'
         sql = 'insert into book values(%s,%s,%s,%s,%s,%s,%s,%s)'
         cur.execute (sql0, (str (no), str (name)))
         count = cur.rowcount
         if count == 0:
             cur.execute (sql, [str (no), str (name), str (author), str (publisher), str (year), float (price),
                                 str (state),int (num)])
             con.commit ()
             sc = True
             return sc

#      获取数据库的key
     def getKeys(self,tablename):
         array=[]
         sql='desc '+str(tablename)
         cur.execute(sql)
         for i in list(cur):
            array.append(i[0])
         return array

# mySqlCon.login(self=None,no="000",pwd='123')
# print(mySqlCon.exe(self=None,).fetchall())
# print(mySqlCon.SelectByRange(self=None,range='bookno',value='TN124').fetchall())
# print(mySqlCon().getKeys("book"))

三.控制层(前端模板文件在以前发的有)

1.包设计

2.控制层实现方法(views.py)

from django.http import HttpResponse
from django.shortcuts import render
import datetime
import pymysql as pm

# 路径问题!一定要注意
# 在django中,我们是用相对路径,也就是相对文件views的路径
# 同级别目录直接往下写
# 上一级使用.代替
# 上两级使用..代替、
# 从root路径往下写
from ..DaoMapper.daoInfo import mySqlCon

keys=mySqlCon().getKeys("book")

# 展示所有书籍,返回display.html页面
def search(request):
    return render(request,'page/bookTable.html',{"books":mySqlCon.exe(self=None),'keys':keys})


# 进入登录页面
def login(request):
    return render(request,'page/login.html')
# 进入添加书籍页面
def insertBookPage(request):
    data=mySqlCon().exe()
    print(data)
    return  render(request,'page/insertBook.html',{"books_values":data,'books_keys':keys})

# 登录实现
def getDateFromLogin(request):
    # is=mySqlCon.login()
    request.encoding='utf-8'
    username=request.GET['username']
    pwd=request.GET['password']
    if mySqlCon().login(no=username,pwd=pwd)==True:
        info=search(request=request)
        return info
    else:
        message = "<script>alert('请检查表单')</script>"
        return HttpResponse (message)

# 查询书名
def getDataByRange(request):
    request.encoding='utf-8'
    book=request.GET['bookdata']
    range=request.GET['bookrange']
    data=mySqlCon().SelectByRange(range=str(range),value=str(book))
    if data.rowcount!=None:
        # 渲染页面
        return  render(request,'page/bookTable.html',{"books":data,'keys':keys})
    else:
        info=RenderError(request=request)
        return  info

def insertBook(request):
    request.encoding='utf-8'
    bookno=request.GET['bookno']
    bookname=request.GET['bookname']
    author=request.GET['author']
    publisher=request.GET['publisher']
    publishyear=request.GET['publishyear']
    price=request.GET['price']
    state=request.GET['state']
    bookstore=request.GET['bookstore']
    s=mySqlCon().insert_book(no=bookno,name=bookname,author=author,publisher=publisher,price=price,year=publishyear,state=state,num=bookstore)
    data=mySqlCon().exe()
    if s ==True:
        return  render(request,'page/insertBook.html',{"books_values":data,'books_keys':keys})
    else:
        return render(request,"数据加载失败")

def RenderError(request):
    return  render(request,'page/errior.html')

 

3.路由转发(urls.py)

"""app URL Configuration

The `urlpatterns` list routes URLs to views. For more information please see:
    https://docs.djangoproject.com/en/2.2/topics/http/urls/
Examples:
Function views
    1. Add an import:  from my_app import views
    2. Add a URL to urlpatterns:  path('', views.home, name='home')
Class-based views
    1. Add an import:  from other_app.views import Home
    2. Add a URL to urlpatterns:  path('', Home.as_view(), name='home')
Including another URLconf
    1. Import the include() function: from django.urls import include, path
    2. Add a URL to urlpatterns:  path('blog/', include('blog.urls'))
"""
from django.contrib import admin
from django.urls import path
from .View import views

urlpatterns = [
    path('admin/', admin.site.urls),
    # 查询全部页面
    path('select_all/',views.search),
    # 登录
    path("login/",views.login),
    # 登录后跳转到select_all页面
    path("login_entry",views.getDateFromLogin),
    # 查询控件
    path("select",views.getDataByRange),
    # 错误控件
    path('error/',views.RenderError),
    # 添加控件
    path('insertBook/',views.insertBook),
    path('insertBookPage/',views.insertBookPage,name='insertBookPage'),
]

 四.运行代码

打开对应的浏览器窗口127.0.0.1:8000/login/,确保运行了django服务。

 进入登录页面

登录页面成功进入后,进入主页 

执行查询功能

 

 点击新增数据

 


 

 

 

总结

以上就是今天要讲的内容,本文仅仅简单介绍了django框架的使用,后面使用hive+django的echarts的可视化展示,neo4j 遗传图谱+django也会慢慢涉及

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值