0x00 基础

  • 查看本地数据库 show databases
  • 查看当前所在数据库 select database();
  • 查看目前所处数据库的数据表 show tables;
  • 显示数据库版本 select version();
  • 查看当前用户 select user();
  • 查看当前目录:select @@datadir;
  • 查看安装路径:select @@basedir;
  • SELECT - 从数据库中提取数据

    • SELECT column_name,column_name FROM table_name;orSELECT * FROM table_name; SELECT 语句用于从数据库中选取数据
    • SELECT DISTINCT column_name,column_name FROM table_name;在表中,一个列可能会包含多个重复值,有时您也许希望仅仅列出不同(distinct)的值。DISTINCT 关键词用于返回唯一不同的值
    • SELECT column_name,column_name FROM table_name WHERE column_name operator value;WHERE 子句用于提取那些满足指定条件的记录。
    • SELECT column_name,column_name FROM table_name ORDER BY column_name,column_name ASC|DESC;ORDER BY 关键字用于对结果集按照一个列或者多个列进行排序。
  • UPDATE - 更新数据库中的数据

    • UPDATE table_name SET column1=value1,column2=value2,... WHERE some_column=some_value;
  • DELETE - 从数据表中删除数据

    • DELETE FROM table_name WHERE some_column=some_value;
  • INSERT INTO - 向数据库中插入新数据

    • 第一种形式无需指定要插入数据的列名,只需提供被插入的值即可:INSERT INTO table_name VALUES (value1,value2,value3,...);
    • 第二种形式需要指定列名及被插入的值:INSERT INTO table_name (column1,column2,column3,...) VALUES (value1,value2,value3,...);
  • CREATE DATABASE - 创建新数据库
  • ALTER DATABASE - 修改数据库
  • drop database <数据库名>; 删除数据库
  • CREATE TABLE - 创建新表

    • CREATE TABLE table_name (column_name column_type);
  • ALTER TABLE - 变更(改变)数据库表

    • ALTER TABLE testalter_tbl DROP i;
  • DROP TABLE table_name ; - 删除表
  • CREATE INDEX - 创建索引(搜索键)
  • DROP INDEX - 删除索引
  • LIKE 子句

    • SQL LIKE 子句中使用百分号 %字符来表示任意字符,类似于UNIX或正则表达式中的星号 *。
    • 如果没有使用百分号 %, LIKE 子句与等号 = 的效果是一样的。
    • 语法
SELECT field1, field2,...fieldN 
FROM table_name
WHERE field1 LIKE condition1 [AND [OR]] filed2 = 'somevalue'

例如:SELECT * from runoob_tbl WHERE runoob_author LIKE '%COM';

  • UNION 操作符

    • MySQL UNION 操作符用于连接两个以上的 SELECT 语句的结果组合到一个结果集合中。多个 SELECT 语句会删除重复的数据。
    • MySQL UNION 操作符语法格式:
SELECT expression1, expression2, ... expression_n
FROM tables
[WHERE conditions]
UNION [ALL | DISTINCT]
SELECT expression1, expression2, ... expression_n
FROM tables
[WHERE conditions];

0x01

  • information_schema,是信息数据库。其中保存着关于MySQL服务器所维护的所有其他数据库的信息。如数据库名,数据库的表,表栏的数据类型与访问权限等。
  • Web渗透过程中用途很大
  • SCHEMATA表∶提供了当前MySQL实例中所有数据库的信息。是show databases的结果取之此表。
  • TABLES表:提供了关于数据库中的表的信息(包括视图)。
  • COLUMNS表∶提供了表中的列信息。详细表述了某张表的所有列以及每个列的信息。

例子

  • 创建数据库test :   create database test;
  • 创建数据表test :  create table test ( 'id'int(11),'user’ varchar(55));
  • SCHEMATA表:  select * from information_schema.schemata;
  • TABLES表:   setect * from information_schema.tables where table_schema= 'test';
  • COLUMNS表:   select * from information_schema.columns where table_name='test';

0x02 MySql的数据类型

Go菜鸟教程

Last modification:December 2nd, 2020 at 05:00 pm
如果觉得我的文章对你有用,请随意赞赏