MySQL中随机生成固定长度字符串的方法

摘要:
在MySQL中,有时需要随机生成数字或字符串。Rand()函数可以直接用于随机生成数字,但随机生成字符串很麻烦。要随机生成字符串代码,请在MySQL中定义一个随机字符串方法,然后在SQL语句中调用此方法。

在MySQL中有时需要随机生成数字或字符串,随机生产数字可直接使用rand()函数,但是要随机生成字符串就比较麻烦。

要随机生成字符串代码如下:

在MySQL中定义一个随机串的方法,然后再SQL语句中调用此方法。

随机串函数定义方法:

CREATE DEFINER=`root`@`localhost` FUNCTION `rand_string`(n INT) RETURNS varchar(255) CHARSET latin1
BEGIN
    DECLARE chars_str varchar(100) DEFAULT 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789';
    DECLARE return_str varchar(255) DEFAULT '';
    DECLARE i INT DEFAULT 0;
    WHILE i < n DO
        SET return_str = concat(return_str,substring(chars_str , FLOOR(1 + RAND()*62 ),1));
        SET i = i +1;
    END WHILE;
    RETURN return_str;
END;

使用随机串函数方法示例:

UPDATE demotable SET demoname=rand_string(32) WHERE id>23

直接执行即可。

免责声明:文章转载自《MySQL中随机生成固定长度字符串的方法》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇UI自动化之分层思想pom模式django集成ansibe实现自动化下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

mis系统的技术需求

  所谓MIS(管理信息系统--Management Information System)系统,主要指的是进行日常事务操作的系统。这种系统主要用于管理需要的记录,并对记录数据进行相关处理,将处理的信息及时反映给管理者的一套网络管理系统。   开发一个mis系统需要用到eclipse,还需要tomcat和mySQL。   tomcat安装、配置过程:首先下...

Oracle加密解密

Oracle内部有专门的加密包,可以很方便的对内部数据进行加密(encrypt)和解密(decrypt).   介绍加密包之前,先简单说一下Oracle基本数据类型——RAW类型。   RAW,用于保存位串的数据类型,类似于CHAR,声明方式RAW(L),L为长度,以字节为单位,作为数据库列最大2000,作为变量最大32767字节。      操作RAW类...

MySQL-快速入门(11)用户管理

1、权限表 存储用户权限信息表主要有:user、db、host、tables_priv、columns_priv、procs_priv。 1》user表: 记录允许连接到服务器的账号信息,里面的权限是全局级别的。user表有42个字段,这些字段可以分为4类,分别是用户列、权限列、安全列、资源控制列。 2》db和host表 3》tables_priv和col...

NUMA导致的MySQL服务器SWAP问题分析

【作者】 王栋:携程技术保障中心数据库专家,对数据库疑难问题的排查和数据库自动化智能化运维工具的开发有强烈的兴趣。 【问题描述】 我们知道当mysqld进程使用到SWAP时,就会严重影响到MySQL的性能。SWAP的问题比较复杂,本文会从SWAP的原理开始,分享我们碰到的案例和分析思路。 【SWAP原理】 swap是把一部分磁盘空间或文件,当作内存来使用。...

mysql中的mysql_real_connect连接参数设置

在前一篇文章中,讲述了如何进行mysql源程序代码的编译链接,但是没有讲述运行情况,在按照上一篇文章代码下进行编译运行后,发现无法链接数据库文件,显然是在mysql_real_connect()函数中出现了问题。在mysql的英文手册中找到关于mysql_real_connect()的如下描述: //函数原型描述MYSQL*mysql_real_con...

CentOS安装mysql源码包

1.# cd /usr/local/src 2.上传mysql.tar.gz文件 3.# tar -zxvf mysql-5.6.36-linux-glibc2.5-x86_64.tar.gz 4.# mv mysql-5.6.36-linux-glibc2.5-x86_64.tar /usr/local/mysql 5.# useradd -s /sbi...