diff --git "a/06 \346\236\227\346\231\237\350\276\211/ 0904/.keep" "b/06 \346\236\227\346\231\237\350\276\211/ 0904/.keep" new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git "a/06 \346\236\227\346\231\237\350\276\211/ 0904/0904.MD" "b/06 \346\236\227\346\231\237\350\276\211/ 0904/0904.MD" new file mode 100644 index 0000000000000000000000000000000000000000..5494fdd207790ea1278336c91c19c1b45d222385 --- /dev/null +++ "b/06 \346\236\227\346\231\237\350\276\211/ 0904/0904.MD" @@ -0,0 +1,6 @@ +# 心得 + +```text +今天学会了VIP解析,以及多个的学习的好网站(绝对没有去抄答案的想法,信我是秦始皇) +``` + diff --git "a/06 \346\236\227\346\231\237\350\276\211/.keep" "b/06 \346\236\227\346\231\237\350\276\211/.keep" new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git "a/06 \346\236\227\346\231\237\350\276\211/0905/.keep" "b/06 \346\236\227\346\231\237\350\276\211/0905/.keep" new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git "a/06 \346\236\227\346\231\237\350\276\211/0905/0905.md" "b/06 \346\236\227\346\231\237\350\276\211/0905/0905.md" new file mode 100644 index 0000000000000000000000000000000000000000..9e5e6ff41dc1c6dad3526dc85c36d3ae05c83fdc --- /dev/null +++ "b/06 \346\236\227\346\231\237\350\276\211/0905/0905.md" @@ -0,0 +1,261 @@ +# 心得 + +```text +在多表多属性的数据库中,表中的元素关系类别 +一对一:一个人对一个身份证,相互独立且唯一 联表时将一个表的主键放到另一个表做外键 +一对多:一个教室对多个人 联表时可以要将一的表中的主键放在多的表做外键 +多对多:学生对各个科的成绩 联表时需要第三个表来联系两个表的主键 +使用E-R图表来表明各个表的联系 +``` + +# 代码 + +```mysql +SET NAMES utf8mb4; +SET FOREIGN_KEY_CHECKS = 0; + +-- Table structure for class + +DROP TABLE IF EXISTS `class`; +CREATE TABLE `class` ( + `cid` int(11) NOT NULL AUTO_INCREMENT, + `cName` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL, + `sid` int(11) NULL DEFAULT NULL, + `cr_id` int(11) NULL DEFAULT NULL, + PRIMARY KEY (`cid`) USING BTREE, + INDEX `sid`(`sid`) USING BTREE, + INDEX `cr_id`(`cr_id`) USING BTREE, + CONSTRAINT `class_ibfk_1` FOREIGN KEY (`sid`) REFERENCES `major` (`sid`) ON DELETE RESTRICT ON UPDATE RESTRICT, + CONSTRAINT `class_ibfk_2` FOREIGN KEY (`cr_id`) REFERENCES `classroom` (`cr_id`) ON DELETE RESTRICT ON UPDATE RESTRICT +) ENGINE = InnoDB AUTO_INCREMENT = 7 CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = DYNAMIC; + +-- Records of class + +-- ---------------------------- + +INSERT INTO `class` VALUES (1, '一班', 1, 1); +INSERT INTO `class` VALUES (2, '二班', 1, 2); +INSERT INTO `class` VALUES (3, '三班', 2, 3); +INSERT INTO `class` VALUES (4, '四班', 2, 4); +INSERT INTO `class` VALUES (5, '五班', 3, 1); +INSERT INTO `class` VALUES (6, '六班', 3, 2); + +-- ---------------------------- + +-- Table structure for classroom + +-- ---------------------------- + +DROP TABLE IF EXISTS `classroom`; +CREATE TABLE `classroom` ( + `cr_id` int(11) NOT NULL AUTO_INCREMENT, + `address` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL, + PRIMARY KEY (`cr_id`) USING BTREE +) ENGINE = InnoDB AUTO_INCREMENT = 5 CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = DYNAMIC; + +-- ---------------------------- + +-- Records of classroom + +-- ---------------------------- + +INSERT INTO `classroom` VALUES (1, '教室101'); +INSERT INTO `classroom` VALUES (2, '教室102'); +INSERT INTO `classroom` VALUES (3, '教室103'); +INSERT INTO `classroom` VALUES (4, '教室104'); + +-- ---------------------------- + +-- Table structure for course + +-- ---------------------------- + +DROP TABLE IF EXISTS `course`; +CREATE TABLE `course` ( + `cou_id` int(11) NOT NULL AUTO_INCREMENT, + `name` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL, + PRIMARY KEY (`cou_id`) USING BTREE +) ENGINE = InnoDB AUTO_INCREMENT = 5 CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = DYNAMIC; + +-- ---------------------------- + +-- Records of course + +-- ---------------------------- + +INSERT INTO `course` VALUES (1, '语文'); +INSERT INTO `course` VALUES (2, '数学'); +INSERT INTO `course` VALUES (3, '英语'); +INSERT INTO `course` VALUES (4, '计算机'); + +-- ---------------------------- + +-- Table structure for coursetable + +-- ---------------------------- + +DROP TABLE IF EXISTS `coursetable`; +CREATE TABLE `coursetable` ( + `ct_id` int(11) NOT NULL AUTO_INCREMENT, + `name` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL, + `cr_id` int(11) NULL DEFAULT NULL, + PRIMARY KEY (`ct_id`) USING BTREE, + INDEX `cr_id`(`cr_id`) USING BTREE, + CONSTRAINT `coursetable_ibfk_1` FOREIGN KEY (`cr_id`) REFERENCES `classroom` (`cr_id`) ON DELETE RESTRICT ON UPDATE RESTRICT +) ENGINE = InnoDB AUTO_INCREMENT = 5 CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = DYNAMIC; + +-- ---------------------------- + +-- Records of coursetable + +-- ---------------------------- + +INSERT INTO `coursetable` VALUES (1, '语文', 1); +INSERT INTO `coursetable` VALUES (2, '数学', 2); +INSERT INTO `coursetable` VALUES (3, '英语', 3); +INSERT INTO `coursetable` VALUES (4, '计算机', 4); + +-- ---------------------------- + +-- Table structure for department + +-- ---------------------------- + +DROP TABLE IF EXISTS `department`; +CREATE TABLE `department` ( + `did` int(11) NOT NULL AUTO_INCREMENT, + `dName` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL, + PRIMARY KEY (`did`) USING BTREE +) ENGINE = InnoDB AUTO_INCREMENT = 2 CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = DYNAMIC; + +-- ---------------------------- + +-- Records of department + +-- ---------------------------- + +INSERT INTO `department` VALUES (1, '软件工程学院'); + +-- ---------------------------- + +-- Table structure for major + +-- ---------------------------- + +DROP TABLE IF EXISTS `major`; +CREATE TABLE `major` ( + `sid` int(11) NOT NULL AUTO_INCREMENT, + `sName` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL, + `did` int(11) NOT NULL, + PRIMARY KEY (`sid`) USING BTREE, + INDEX `did`(`did`) USING BTREE, + CONSTRAINT `major_ibfk_1` FOREIGN KEY (`did`) REFERENCES `department` (`did`) ON DELETE RESTRICT ON UPDATE RESTRICT +) ENGINE = InnoDB AUTO_INCREMENT = 4 CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = DYNAMIC; + +-- ---------------------------- + +-- Records of major + +-- ---------------------------- + +INSERT INTO `major` VALUES (1, '前端', 1); +INSERT INTO `major` VALUES (2, '后端', 1); +INSERT INTO `major` VALUES (3, '新媒体', 1); + +-- ---------------------------- + +-- Table structure for selectcourse + +-- ---------------------------- + +DROP TABLE IF EXISTS `selectcourse`; +CREATE TABLE `selectcourse` ( + `se_id` int(11) NOT NULL AUTO_INCREMENT, + `stu_id` int(11) NULL DEFAULT NULL, + `cou_id` int(11) NULL DEFAULT NULL, + PRIMARY KEY (`se_id`) USING BTREE, + INDEX `stu_id`(`stu_id`) USING BTREE, + INDEX `cou_id`(`cou_id`) USING BTREE, + CONSTRAINT `selectcourse_ibfk_1` FOREIGN KEY (`stu_id`) REFERENCES `student` (`stu_id`) ON DELETE RESTRICT ON UPDATE RESTRICT, + CONSTRAINT `selectcourse_ibfk_2` FOREIGN KEY (`cou_id`) REFERENCES `course` (`cou_id`) ON DELETE RESTRICT ON UPDATE RESTRICT +) ENGINE = InnoDB AUTO_INCREMENT = 7 CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = DYNAMIC; + +-- ---------------------------- + +-- Records of selectcourse + +-- ---------------------------- + +INSERT INTO `selectcourse` VALUES (1, 1, 1); +INSERT INTO `selectcourse` VALUES (2, 2, 2); +INSERT INTO `selectcourse` VALUES (3, 3, 3); +INSERT INTO `selectcourse` VALUES (4, 4, 4); +INSERT INTO `selectcourse` VALUES (5, 5, 1); +INSERT INTO `selectcourse` VALUES (6, 6, 2); + +-- ---------------------------- + +-- Table structure for student + +-- ---------------------------- + +DROP TABLE IF EXISTS `student`; +CREATE TABLE `student` ( + `stu_id` int(11) NOT NULL AUTO_INCREMENT, + `id` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL, + `name` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL, + `cid` int(11) NULL DEFAULT NULL, + PRIMARY KEY (`stu_id`) USING BTREE, + INDEX `cid`(`cid`) USING BTREE, + CONSTRAINT `student_ibfk_1` FOREIGN KEY (`cid`) REFERENCES `class` (`cid`) ON DELETE RESTRICT ON UPDATE RESTRICT +) ENGINE = InnoDB AUTO_INCREMENT = 7 CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = DYNAMIC; + +-- ---------------------------- + +-- Records of student + +-- ---------------------------- + +INSERT INTO `student` VALUES (1, '1', '梦泪', 1); +INSERT INTO `student` VALUES (2, '2', '蜗壳', 2); +INSERT INTO `student` VALUES (3, '3', '杰鸽', 3); +INSERT INTO `student` VALUES (4, '4', '王毛毛', 4); +INSERT INTO `student` VALUES (5, '5', '郑绿灰', 5); +INSERT INTO `student` VALUES (6, '6', '郑蓝黑', 6); + +-- ---------------------------- + +-- Table structure for teacher + +-- ---------------------------- + +DROP TABLE IF EXISTS `teacher`; +CREATE TABLE `teacher` ( + `tid` int(11) NOT NULL AUTO_INCREMENT, + `name` varchar(11) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL, + `cou_id` int(11) NULL DEFAULT NULL, + PRIMARY KEY (`tid`) USING BTREE, + INDEX `cou_id`(`cou_id`) USING BTREE, + CONSTRAINT `teacher_ibfk_1` FOREIGN KEY (`cou_id`) REFERENCES `course` (`cou_id`) ON DELETE RESTRICT ON UPDATE RESTRICT +) ENGINE = InnoDB AUTO_INCREMENT = 5 CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = DYNAMIC; + +-- ---------------------------- + +-- Records of teacher + +-- ---------------------------- + +INSERT INTO `teacher` VALUES (1, '郑弘辉', 1); +INSERT INTO `teacher` VALUES (2, '陈姐', 2); +INSERT INTO `teacher` VALUES (3, '张飞', 3); +INSERT INTO `teacher` VALUES (4, '林吮吸', 4); + +SET FOREIGN_KEY_CHECKS = 1; +``` + +# 查询 + +```MySQL +SELECT student.`name` as '学生姓名',course.`name` as '课程名' FROM student,selectcourse,course where student.stu_id=selectcourse.stu_id and selectcourse.cou_id=course.cou_id and student.`name`='蜗壳'; +``` + diff --git "a/06 \346\236\227\346\231\237\350\276\211/0905/\347\273\230\345\233\2762.vsdx" "b/06 \346\236\227\346\231\237\350\276\211/0905/\347\273\230\345\233\2762.vsdx" new file mode 100644 index 0000000000000000000000000000000000000000..a32a0705242054397c2294c1486b71e17a3fd1cd Binary files /dev/null and "b/06 \346\236\227\346\231\237\350\276\211/0905/\347\273\230\345\233\2762.vsdx" differ