SQL注入语法和介绍(一)

SQL注入即是指WEB应用程序对用户输入数据的合法性没有判断或过滤不严,攻击者可以在web应用程序中事先定义好的查询语句的结尾上添加额外的SQL语句,在管理员不知情的情况下实现非法操作,以此来实现欺骗数据库服务器执行非授权的任意查询,从而进一步得到相应的数据信息。

WEB应用程序三层架构:视图层+业务逻辑层+数据访问层

SQL注入之MySQL数据库

复制代码
数据库服务器层级关系:
    服务器里面
        :多个数据库
            :多个数据表
                :多个列、行、字段
                    :最后拿到的才是我们想要的数据
                    
                    
                    
系统库释义
提供了访问数据库元数据的方式。
information_schema      信息模式数据库,提供对数据库元数据的访问,符合 SQL 标准。
performance_schema      性能模式,用于监控 MySQL 服务器运行时的性能数据。
mysql                   MySQL 系统数据库,存储用户权限、插件、时区等系统信息。
sys                     系统数据库,基于 performance_schema 和 information_schema 提供更易读的性能视图。

基本的查询语句

复制代码
show databases; 查看所有数据库
use 数据库名; 进入\选择数据库
show tables; 查看当前数据库的所有表
select * from 表名; 查看某个表的所有数据
select * from users; 查看users表里的所有数据

条件查询(where)

复制代码
select * from users where id=2;
利用union联合查询,拼接在一起查询,可以一条语句,查多个结果
select * from users where id=2 union select * from users where pass = 111;
select * from users where id=1 or pass = 111; 都行
select * from users where id=1 || pass = 111; 也行
select * from users where id=1 && pass = 123456;

联合查询(多个语句查询)

复制代码
1、前后相互独立,前面查询的语句和后面的查询语句,结果互不干扰!
2、前面的查询语句的字段数量 和 后面的查询语句的数量要保持一致
但是首行的字段名,是第一个的字段名
不能前面2个,后面3个

order by(排序)

复制代码
select * from users order by id; 默认是降序(desc),asc(升序)
作用是猜解表的字段/列数
select * from users order by 可以写1、2、3、4、...;
order by 后面的数字是表的字段数,第几列
当order by 1没有报错说明有1个字段
当order by 2报错说明没有2个字段
这样就可以知道表中有多少个字段

系统数据库

复制代码
默认是数据库系统自带的
高版本自带系统库,而5.0以下的版本不带系统库
在MySQL5.5才开始新增一个数据库

information_schema

复制代码
共有61张表,其中三张表
1.schemata:保存当前MySQL整个服务器所有的的数据库信息,库名
2.tables:保存当前整个服务器所有的数据表的信息 表名
3.columns:保存当前整个服务器所有的字段的信息 列名
常用参数
复制代码
tables          表
table_name      表名
columns         列
column_name     列名
scheam_name     库名
schemata        
相关推荐
oradh3 小时前
Oracle TX 锁 Mode 4(Share)问题排查总结
数据库·oracle·tx 锁 mode 4·oracle tx 锁
yi.Ist4 小时前
数据定义语言-DDL操作
数据库·学习·mysql·oracle·大海豚
2601_963282775 小时前
工程项目、政企采购为什么优先选择对讲机批量采购?
数据库
Doraemomo6 小时前
SQLite数据库
数据库·sqlite
云贝教育-郑老师6 小时前
MySQL 的“黑匣子“:Performance Schema 把数据库内部变成一张可查的表
数据库·mysql
这个DBA有点耶8 小时前
同城双活落地的三座山:网络延迟、脑裂预防、反向同步
数据库·架构·dba
青春之我_XP8 小时前
MySQL 常用日期函数 实战指南
数据库·sql·mysql·数据分析·数据库开发·日期函数
Nturmoils8 小时前
sys_dump 备了库,角色和权限别漏在外面
数据库
接着奏乐接着舞。8 小时前
【2026】73道Redis 常见面试题与参考答案
数据库·redis·后端·缓存