MySQL

Mysql 【5.0以上】

MySQL架构

如图:

在这里插入图片描述

information_schema库

  • 在MySQL中,把information_schema看作一个信息数据库。其中保存着关于mysql服务器所维护的所有其他数据库的信息。
    • SCHEMATA表:提供了当前mysql实例中所有数据库的信息。
    • TABLES表:提供了关于数据库中表的信息(包括视图)详细表述了某个数据库中所有表的信息[需添加条件]
    • COLUMNS表:提供了表中的列信息。详细表述了某张表的所有列以及每个列的信息[需添加条件]

如图:

  • SCHEMA表中的SCHEMA_NAME【所有库名】

在这里插入图片描述

  • TABLES表中的TABLE_NAME【所有库中所有表的信息】

在这里插入图片描述

  • COLUMNS表中的COLUMN_NAME【所有库所有表的所有列的信息】

在这里插入图片描述

mysql库

  • user表:存放数据库中所有的用户名和密码

在这里插入图片描述

一些sql语法

select查询语句

1、查询mysql库user表中的所有信息

select * from mysql.user;
[select表示查询;*代指所有东西;from指去什么地方查询]

在这里插入图片描述

2、查询user表中User这一列的信息

select User from mysql.user;

在这里插入图片描述

3、查询test数据库中users表中id=1的数据

select * from test.users where id=1;

4、查询test数据库中users表中address为china并且username为zhangsan的数据

select * from test.users where address='china' and username='zhangsan';

order by 排序语句

例如:

1、查询mysql库中的user表中的所有数据并按第一列排序

select * from test.users order by 1;

在这里插入图片描述

2、查询mysql库中的user表中的所有数据并按第二列排序

select * from test.users order by 2;

在这里插入图片描述

3、查询mysql库中的user表中的所有数据并按第三列排序

select * from test.users order by 3;

在这里插入图片描述

4、当超过所有的列数后:

select * from test.users order by 50;

在这里插入图片描述

用这种方法,可以在SQL注入时测试出列数

union联合查询语句

UNION 操作符用于将两个以上的SELECT语句的结果组合到一个结果集合中。

例子:

查询test数据库总users中username列的数据并查询person表中username列的数据。

select username from test.person union select person.username;

得到的结果是将两份数据中相同的部分只留下一份

若查询的类型不同,得到的结果也会在第一个列名下出现。

insert插入语句

例如:在test数据库中person表插入一条数据:username是lishi,money是100

insert into person (username,money) values ('lishi','100');
[insert into 表名 (列名1,列名2values(即填入的值)(‘xxx’,‘xxx’)]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值