日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

php mysql 随机字符串_MySQL_Mysql 自定义随机字符串的实现方法,前几天在开发一个系统,需要 - phpStudy...

發(fā)布時(shí)間:2023/12/2 数据库 40 豆豆
生活随笔 收集整理的這篇文章主要介紹了 php mysql 随机字符串_MySQL_Mysql 自定义随机字符串的实现方法,前几天在开发一个系统,需要 - phpStudy... 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

Mysql 自定義隨機(jī)字符串的實(shí)現(xiàn)方法

前幾天在開發(fā)一個(gè)系統(tǒng),需要用到隨機(jī)字符串,但是mysql的庫函數(shù)有沒有直接提供,就簡單的利用現(xiàn)有的函數(shù)東拼西湊出隨機(jī)字符串來.下面簡單的說下實(shí)現(xiàn)當(dāng)時(shí).

1.簡單粗暴.

select ..., substring(MD5(RAND()),floor(RAND()*26)+1,6) as rand_str .....

上訴示例產(chǎn)生的是:6位長度的隨機(jī)字符串.

函數(shù)解釋:

rand() :產(chǎn)生 0-1之間的小數(shù),簡稱種子.rand()*25 產(chǎn)生的數(shù) 在 0- 25 之間,不包括25

floor(val): 生成最近接val的最大整數(shù)

md5() :對字符串進(jìn)行Md5加密(單向),生成的字符串長度是32位。

substring(str,pos,len):截取字符串,第一個(gè)參數(shù):待截取的字符串,第二個(gè)參數(shù):開始的位置(這里有些不同,下標(biāo)開始位置為1,可以試試下),第三個(gè)參數(shù):截取的長度.

2.將方式1進(jìn)行包裝一下:自定義函數(shù)

drop function if exists rand_str;

#第一句: 如果存在重名函數(shù),就將其刪除

create function rand_str(strlen smallint) returns varchar(255)

#第二句: 定義一個(gè)函數(shù),名稱'rand_str' ,參數(shù)名 strlen 參數(shù)類型 smallint , 返回值類型 varchar(255) ,特別 注意下 這里的 是returns 下面的是 return

#BEGIN

#相當(dāng)于左大括號(hào) '{'

DECLARE result_str VARCHAR(255) DEFAULT '';

#聲明返回值對象,類型 ,長度 ,默認(rèn)值

SET result_str =SUBSTRING(MD5(RAND()),32-strlen,strlen);

#設(shè)置返回值對象的值 方式1中簡單粗暴的函數(shù)

RETURN result_str;

#返回 結(jié)果對象 這里的是 return

END

# 結(jié)束標(biāo)識(shí) 相當(dāng)于 '}'

3.自定義函數(shù) 直接上代碼

每一句的實(shí)現(xiàn)就不解釋了,可以參加方式2中的代碼解釋看一下

DROP FUNCTION IF EXISTS rand_str;

create FUNCTION rand_str(strlen SMALLINT ) RETURNS VARCHAR(255)

BEGIN

DECLARE randStr VARCHAR(255) DEFAULT 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890';

DECLARE i SMALLINT DEFAULT 0;

DECLARE resultStr VARCHAR(255) DEFAULT '';

WHILE i

SET resultStr=CONCAT(SUBSTR(randStr,FLOOR(RAND()*LENGTH(randStr))+1,1),resultStr);

SET i=i+1;

END WHILE;

RETURN resultStr;

END

以上所述是小編給大家介紹的Mysql 自定義隨機(jī)字符串的實(shí)現(xiàn)方法,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對phpstudy網(wǎng)站的支持!相關(guān)閱讀:

JS使用oumousemove和oumouseout動(dòng)態(tài)改變圖片顯示的方法

用JavaScript動(dòng)態(tài)建立或增加CSS樣式表的實(shí)現(xiàn)方法

JavaScript設(shè)置body高度為瀏覽器高度的方法

html5 worker 實(shí)例(二) 圖片變換效果

IOS中手風(fēng)琴表不能移動(dòng)的解決方法

安裝Fedora作為工作環(huán)境后的一些配置建議

window.print打印指定div指定網(wǎng)頁指定區(qū)域的方法

jQuery實(shí)現(xiàn)自動(dòng)輸入email、時(shí)間和域名的方法

C#解析json字符串總是多出雙引號(hào)的原因分析及解決辦法

CSS 文本字體顏色設(shè)置方法(CSS color)

csshover.htc在IE7下使用:active偽類無效解決方法

在Ubuntu上安裝消息傳遞接口Open MPI庫的教程

深度探究C++中的函數(shù)重載的用法

Win10系統(tǒng)如何電腦關(guān)閉系統(tǒng)還原以減少磁盤占用空間

總結(jié)

以上是生活随笔為你收集整理的php mysql 随机字符串_MySQL_Mysql 自定义随机字符串的实现方法,前几天在开发一个系统,需要 - phpStudy...的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。