zoukankan      html  css  js  c++  java
  • mysql函数应用

    昨天测试时发现大佬暴力修改了数据库的某些字段,导致无法人员注册,按理说屏蔽关键信息应该是只将身份证的几位改为*就好。

    为了继续测试,自力更生,寻求正确的sql语句修改,学习到一些方便的函数

    concat函数
    使用方法:
    CONCAT(str1,str2,…)  

    返回结果为连接参数产生的字符串。如有任何一个参数为NULL ,则返回值为 NULL。

    MID()函数

    SQL MID() 函数用于得到一个字符串的一部分。这个函数被MySQL支持,但不被MS SQL Server和Oracle支持。在SQL Server, Oracle 数据库中,我们可以使用 SQL SUBSTRING函数或者 SQL SUBSTR函数作为替代。

    MID() 函数语法为:

    1 SELECT MID(ColumnName, Start [, Length])
    2 FROM TableName

    注:字符串从1开始,而非0,Length是可选项,如果没有提供,MID()函数将返回余下的字符串。

    LEFT()函数

    是一个字符串函数,它返回具有指定长度的字符串的左边部分。

      LEFT(Str,length);

      接收两个参数:

        str:一个字符串;

        length:想要截取的长度,是一个正整数;

    right()函数同理,只是从右边开始截取

    最后放上测试用的sql 

    SELECT
    CONCAT("UPDATE `persons` SET LastName='",CONCAT(LEFT(LastName,1),'**',RIGHT(LastName,2)),"' WHERE (`LastName`='",LastName,"') LIMIT 1;"
    )
    FROM
    persons

    双引号内部要执行表达式用逗号隔开,不然执行时还是当字符串。

  • 相关阅读:
    Oracle PL/SQL中如何使用%TYPE和%ROWTYPE
    SVN使用教程总结
    实践SQLServer Tuning
    SQL性能优化:如何定位网络性能问题
    windows7下修改hosts文件无效解决办法
    jQuery Event.stopPropagation() 函数详解
    引用js或css后加?v= 版本号的用法
    JS实现点击跳转登陆邮箱
    DWZ (JUI) 教程 navTab 刷新分析
    CPU与内存的关系
  • 原文地址:https://www.cnblogs.com/henry2019/p/14313788.html
Copyright © 2011-2022 走看看