汕头住房和城乡建设厅网站中国建设银行官网站企业网银下载
汕头住房和城乡建设厅网站,中国建设银行官网站企业网银下载,如何创建网站内容,洋桥网站建设1.初步了解数据库
数据库是存储、组织和管理数据的系统#xff0c;可以将其当成一个电子化的文件柜或图书馆#xff0c;用于高效地存储、检索和管理大量信息。
1.核心概念#xff1a;
结构化存储#xff1a;数据以表格、文档等形式存放#xff0c;而非随意堆放。
高效…1.初步了解数据库数据库是存储、组织和管理数据的系统可以将其当成一个电子化的文件柜或图书馆用于高效地存储、检索和管理大量信息。1.核心概念结构化存储数据以表格、文档等形式存放而非随意堆放。高效管理通过数据库管理系统DBMS如MySQL、Oracle、MongoDB实现数据的增删改查。数据关联支持建立数据间的关系如订单与客户关联2.类型关系型数据库 数据以表格形式存储通过SQL操作强调数据一致性如MySQL、PostgreSQL 银行交易、企业管理系统非关系型数据库 灵活存储文档、键值对等适合海量非结构化数据如MongoDB、Redis 社交网络、物联网数据时序数据库 专为时间序列数据优化如InfluxDB 监控系统、传感器数据3.为什么需要数据库替代文件存储避免手动处理Excel或文本文件的繁琐与错误。处理大规模数据支持百万级数据的高效查询。保证数据完整性如禁止重复学号等规则。支持复杂应用电商、社交平台等都依赖数据库后台。2.初步了解sql注入漏洞SQL注入是一种通过恶意SQL代码操纵后端数据库的攻击方式是Web安全中最常见且危险的漏洞之一。1.攻击原理核心问题将用户输入直接拼接到SQL查询中未进行过滤或转义。如登录账号攻击者不需要密码即可登录2.攻击类型经典注入 通过单引号闭合语句 OR 11联合查询注入 使用 UNION 获取其他表数据 UNION SELECT username, password FROM users --盲注 无显式错误通过页面差异判断 AND 11 -- (正常) vs AND 12 -- (异常)时间盲注 通过延时判断条件真假 AND IF(11, SLEEP(5), 0) --堆叠查询 执行多条SQL语句如MySQL ; DROP TABLE users; --二阶注入 数据先被存储后触发 注册用户名 admin-- 后续操作时触发3.练习sql语句1.安装navicat通过此教程进行下载Navicat Premium 16 保姆级手把手 安装教程包含下载、安装、授权附安装包-CSDN博客2.练习点击连接打开mysql这里采用某一练习进行练手将以下全部复制-- 创建数据库如果不存在CREATE DATABASE IF NOT EXISTS student_grade_db;USE student_grade_db;-- 创建课程表5门课覆盖常见科目CREATE TABLE courses (id INT AUTO_INCREMENT PRIMARY KEY,course_name VARCHAR(50) NOT NULL);-- 创建学生表30个真实感名字班级年龄CREATE TABLE students (id INT AUTO_INCREMENT PRIMARY KEY,name VARCHAR(50) NOT NULL,age INT NOT NULL,gender VARCHAR(10) NOT NULL,class VARCHAR(20) NOT NULL);-- 创建成绩表关联学生和课程150条数据CREATE TABLE scores (id INT AUTO_INCREMENT PRIMARY KEY,student_id INT NOT NULL,course_id INT NOT NULL,score DECIMAL(5,2) NOT NULL,FOREIGN KEY (student_id) REFERENCES students(id),FOREIGN KEY (course_id) REFERENCES courses(id));-- 插入课程数据5门课基础科目全齐INSERT INTO courses (course_name) VALUES(Mathematics),(Chinese),(English),(Physics),(Chemistry);-- 插入30个学生数据名字/年龄/性别/班级随机分配真实不塑料INSERT INTO students (name, age, gender, class) VALUES(张明, 19, Male, Computer Science 1),(李华, 20, Female, Computer Science 2),(王芳, 18, Female, IT Engineering 1),(刘伟, 21, Male, Computer Science 1),(陈静, 19, Female, IT Engineering 2),(杨洋, 20, Male, Computer Science 2),(黄丽, 19, Female, Computer Science 1),(周强, 22, Male, IT Engineering 1),(吴敏, 20, Female, Computer Science 2),(徐娜, 18, Female, IT Engineering 2),(孙浩, 20, Male, Computer Science 1),(马超, 21, Male, Computer Science 2),(朱婷, 19, Female, IT Engineering 1),(胡杰, 20, Male, IT Engineering 2),(林雪, 18, Female, Computer Science 1),(何亮, 22, Male, Computer Science 2),(高峰, 19, Male, IT Engineering 1),(郭静, 20, Female, IT Engineering 2),(韩梅, 19, Female, Computer Science 1),(谢敏, 20, Female, Computer Science 2),(邓伟, 21, Male, IT Engineering 1),(冯丽, 18, Female, IT Engineering 2),(曾强, 20, Male, Computer Science 1),(彭华, 19, Female, Computer Science 2),(颜强, 21, Male, IT Engineering 1),(潘丽, 20, Female, IT Engineering 2),(杜明, 22, Male, Computer Science 1),(丁芳, 19, Female, Computer Science 2),(董强, 20, Male, IT Engineering 1),(赵敏, 21, Female, IT Engineering 2);-- 插入150条成绩数据每学生5门课分数有高有低真实到能编故事-- 重点覆盖增删改查所有场景比如查“物理不及格的”、按分数排序等INSERT INTO scores (student_id, course_id, score) VALUES(1,1,85.5), (1,2,90.0), (1,3,78.5), (1,4,82.0), (1,5,88.5), -- 张明学霸型(2,1,76.0), (2,2,85.0), (2,3,82.0), (2,4,79.5), (2,5,81.0), -- 李华中等偏上(3,1,65.0), (3,2,70.0), (3,3,68.0), (3,4,62.0), (3,5,67.0), -- 王芳挂科预警(4,1,92.0), (4,2,88.0), (4,3,85.0), (4,4,90.0), (4,5,89.0), -- 刘伟卷王(5,1,72.5), (5,2,75.0), (5,3,78.0), (5,4,74.5), (5,5,76.0), -- 陈静稳如老狗(6,1,80.0), (6,2,84.0), (6,3,83.0), (6,4,81.0), (6,5,82.5), -- 杨洋进步中(7,1,77.5), (7,2,81.0), (7,3,79.5), (7,4,76.0), (7,5,78.5), -- 黄丽小透明(8,1,88.0), (8,2,92.0), (8,3,89.0), (8,4,91.0), (8,5,90.0), -- 周强大佬(9,1,74.0), (9,2,78.0), (9,3,76.5), (9,4,73.0), (9,5,75.0), -- 吴敏努力型(10,1,68.0), (10,2,72.0), (10,3,70.0), (10,4,65.0), (10,5,69.0), -- 徐娜差点挂科(11,1,83.0), (11,2,86.0), (11,3,84.0), (11,4,82.0), (11,5,85.0), -- 孙浩中上(12,1,79.0), (12,2,82.0), (12,3,80.0), (12,4,78.5), (12,5,81.0), -- 马超稳(13,1,71.5), (13,2,74.0), (13,3,72.5), (13,4,70.0), (13,5,73.0), -- 朱婷小进步(14,1,81.0), (14,2,83.0), (14,3,82.5), (14,4,80.0), (14,5,84.0), -- 胡杰卷中卷(15,1,69.5), (15,2,73.0), (15,3,71.0), (15,4,67.5), (15,5,70.5), -- 林雪差点挂科(16,1,90.0), (16,2,93.0), (16,3,91.0), (16,4,92.0), (16,5,94.0), -- 何亮天花板(17,1,75.0), (17,2,77.0), (17,3,76.0), (17,4,74.0), (17,5,78.0), -- 高峰中等(18,1,82.0), (18,2,85.0), (18,3,83.0), (18,4,81.5), (18,5,84.5), -- 郭静优秀(19,1,78.0), (19,2,80.0), (19,3,79.0), (19,4,77.0), (19,5,81.0), -- 韩梅小能手(20,1,84.5), (20,2,87.0), (20,3,86.0), (20,4,85.0), (20,5,88.0), -- 谢敏学霸(21,1,67.0), (21,2,71.0), (21,3,69.0), (21,4,65.0), (21,5,68.0), -- 邓伟危险边缘(22,1,73.0), (22,2,76.0), (22,3,74.0), (22,4,72.0), (22,5,75.0), -- 冯丽稳(23,1,86.0), (23,2,89.0), (23,3,87.0), (23,4,85.0), (23,5,88.0), -- 曾强卷王(24,1,77.5), (24,2,80.0), (24,3,78.5), (24,4,76.5), (24,5,79.5), -- 彭华中等偏上(25,1,89.0), (25,2,91.0), (25,3,88.5), (25,4,90.0), (25,5,92.0), -- 颜强大佬(26,1,74.5), (26,2,77.5), (26,3,75.0), (26,4,73.5), (26,5,76.5), -- 潘丽小进步(27,1,92.5), (27,2,95.0), (27,3,93.0), (27,4,94.0), (27,5,96.0), -- 杜明天花板2号(28,1,80.5), (28,2,83.5), (28,3,82.0), (28,4,81.0), (28,5,84.0), -- 丁芳优秀(29,1,76.0), (29,2,79.0), (29,3,77.5), (29,4,75.0), (29,5,78.0), -- 董强中等(30,1,83.0), (30,2,86.0), (30,3,84.5), (30,4,82.5), (30,5,85.5); -- 赵敏稳如老狗新建连接后右击点击新建查询点击运行。1.比如查询19岁的姓名输入SELECT name FROM students WHERE age 19;结果如图2.查出班级是Computer Science 1的学生姓名。SELECT name FROM students WHERE class Computer Science 1;3.按年龄从小到大排只看前3名。SELECT name, age FROM students ORDER BY age ASC LIMIT 3;4.以李开头SELECT name FROM students WHERE name LIKE 李%;5.查出女生且年龄小于20岁的学生姓名SELECT name FROM students WHERE gender Female AND age 20;6.查出英语成绩course_id3高于90分的学生姓名。SELECT s.nameFROM students sJOIN scores sc ON s.id sc.student_idWHERE sc.course_id 3 AND sc.score 90;PS靶场在我最早的文章中有教程大家可以看一看