SQL注入预备知识-sql基础

作者: 复现 | 来源:发表于2018-11-29 17:26 被阅读16次

    0.show datebases;//查看库列表

    1.use testbase;//用于选择数据库

    show tables;//查看当前库中的表列表

    2.set names utf8;//用于设置使用的字符集

    3.select * from testform;//从testform表中读取全部数据

    4.selec name,country from testform;//从testform表中读取name,country列的数据

    5.select distinct country from testform;//从testform表中的country列读取不重复的内容

    6.select * from testform where country='CN';//从testform表中读取country列内容为CN所有数据

    7.select * from testform where id=1;//同上

    8.where中的运算符:

    = //等于

    <> //不等于

    != //不等于

    > //大于

    < //小于

    >= //大于等于

    <= //小于等于

    between //在某个范围内

    like //搜索某种模式

    in //指定针对某个列的多个可能值

    9.select * from testbase where iq=7000;//从testform表中获取iq=7000的数据

    10.select * from testbase where iq >200 and iq < 250;//从testform表中获取iq大于200小于250的数据

    11.select * from testbase where iq >200 or iq > 250;//从testform表中获取iq大于200或者iq大于250的数据

    12.select * from testbase where not iq >250;//从testform表中取出不满足iq大于250的数据(iq小于250)

    13.select * from testbase where iq is null;//从testform表中取出iq列中的空值

    14.select * from testbase where iq between 1500 and 2500;//从testform表中取出iq列大于1500小于2500的值

    15.select * from testbase where iq in (250,1000,15000);//查询表testform的iq列中等于250,1000,15000的值

    16.select * from testbase where iq like '7%';//从testbase表中获取iq列中以7开头的内容

    % 表示多个字值,_ 下划线表示一个字符;

     M% : 为能配符,正则表达式,表示的意思为模糊查询信息为 M 开头的。

     %M% : 表示查询包含M的所有内容。

     %M_ : 表示查询以M在倒数第二位的所有内容。

    17.WHERE 子句并不一定带比较运算符,当不带运算符时,会执行一个隐式转换。当 0 时转化为 false,1 转化为 true。例如:

    SELECT studentNO FROM student WHERE 0

    则会返回一个空集,因为每一行记录 WHERE 都返回 false。

    SELECT  studentNO  FROM student WHERE 1

    返回 student 表所有行中 studentNO 列的值。因为每一行记录 WHERE 都返回 true。

    18.select * from testform where country='CN' and iq > 250;//从testform表中取出country为‘CN’并且iq>250的内容

    19.select * from testform where country='CN' or iq >250;//从testform表中取出country为‘CN’或者iq>250的内容

    20.select * from testform where iq > 250 and (country='CN' or country='USA');//从testform表中取出iq>250且country是CN或者USA的内容

    21.select * from testform order by iq;//从testform表中取出全部数据并按iq升序排列(默认的asc)

    22.select * from testform order by iq desc;//从testform表中取出全部内容并按iq列降序排列

    22.select * from testform order by country,iq;//从testform表中取出所有数据并按country和iq列升序排列(先按前面的排序,再按后面的列排序)

    order by A,B //都是升序排列

    order by A desc, B//A降序,B升序排列

    order by A,B desc//A升序,B降序排列

    23.instert into testform(name,url,alexa,country)values ('测试','https://www.baidu.com','4','CN');//向testform表中插入新的一行;

    24.insert into testform (name,url,counrty) values ('测试','https://www.baidu.com','CN');//向testform表中插入新的一行;

    25.insert into testform values (value1,value2,value3...);

    insert into scorebak select * from socre where neza='neza'  --插入一行,要求表scorebak 必须存在    select *  into scorebak from score  where neza='neza'  --也是插入一行,要求表scorebak 不存在

    26.update testform set iq=250,country=''USA where name='test';//修改testform表中name为test行的iq=250 country=“USA”

    27.update testform set iq=250;//修改testform表中所有数据的iq=250

    (可以设置更新报警 set sql_safe_updates=1; //开启where检查报错开关)

    28.delete from testform where iq=250 and country='CN';//从testform表中删除iq列=250以及country列=‘CN’的内容

    29.delete from testform;

    delete from testform;//删除表中所有行数据(可以有备份)

    30.drop testform;//删除表testform(彻底删除,无备份)

    31. truncate testform;//删除表testform的内容并释放空间,保留表结构(无备份)

    删除速度:drop > truncate > delete

    相关文章

      网友评论

        本文标题:SQL注入预备知识-sql基础

        本文链接:https://www.haomeiwen.com/subject/jaifcqtx.html