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        
相关推荐
forEverPlume16 分钟前
PHP怎么使用Eloquent Attribute Composition属性组合_Laravel通过组合构建复杂属性【方法】
jvm·数据库·python
2301_8092047036 分钟前
mysql在docker容器中如何部署_利用docker-compose快速启动
jvm·数据库·python
虹科网络安全36 分钟前
艾体宝产品|深度解读 Redis 8.4 新增功能:原子化 Slot 迁移(上)
数据库·redis·bootstrap
阿坤带你走近大数据1 小时前
怎么查看当前oracle库下的表空间temp大小或者默认大小
数据库·oracle
yoyo_zzm1 小时前
Laravel8.x新特性全解析
数据库·nginx
码界奇点2 小时前
基于Python的新浪微博数据爬虫系统设计与实现
数据库·爬虫·python·毕业设计·新浪微博·源代码管理
我科绝伦(Huanhuan Zhou)2 小时前
探索技术世界:我的GitHub数据库工具宝库
数据库·github
猫的玖月3 小时前
(一)MY SQL概述
数据库·sql
脑子进水养啥鱼?4 小时前
PostgreSQL .history 文件
数据库·postgresql
倔强的石头_4 小时前
5 个真实案例带你避坑:DolphinDB 实时写入、流订阅与高可用调优
数据库