PostgreSQL DBA(99) - Develop(generate random string)
发表于:2026-11-02 作者:千家信息网编辑
千家信息网最后更新 2026年11月02日,为了验证TOAST的相关功能,通过lpad、rpad等方式由于重复率太高看不出效果,因此需要生成随机字符串来填充数据。生成随机字符串的样例函数CREATE OR REPLACE FUNCTION sf
千家信息网最后更新 2026年11月02日PostgreSQL DBA(99) - Develop(generate random string)
为了验证TOAST的相关功能,通过lpad、rpad等方式由于重复率太高看不出效果,因此需要生成随机字符串来填充数据。
生成随机字符串的样例函数
CREATE OR REPLACE FUNCTION sf_generate_randomstring(length int4)RETURNS textAS $$declare chars text[] := '{0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z}'; ret text := ''; i integer := 0; lenofarray int := array_length(chars, 1);begin if length < 0 then raise exception '输入参数不合法,请重新输入!'; end if; for i in 1..length loop ret := ret || chars[1+random()*(lenofarray-1)]; end loop; return ret;end;$$ LANGUAGE 'plpgsql';该函数会随机生成由a-zA-Z0-9字符组成的字符串,长度由输入参数length确定,当然也可以在数组chars中添加其他字符,如中文字符等。
效果如下:
[local]:5432 pg12@testdb=# select sf_generate_randomstring(100); sf_generate_randomstring -------------------------------------------------------------------------------------------- hmski6FmSCcRPcfmSkC3aaX7Ay3QlmTz0497pitHNjLcU8KdKVtO7ysmoqRnwM2Dc9VuPnOxGfUgTX6lIdplRciYETic4GrdRqD1(1 row)Time: 2.022 ms[local]:5432 pg12@testdb=# select length(sf_generate_randomstring(40000)); length -------- 40000(1 row)Time: 174.529 ms[local]:5432 pg12@testdb=#参考资料
PostgreSQL 如何快速构建 海量 逼真 测试数据
字符
字符串
生成
输入
函数
参数
效果
数据
逼真
功能
参考资料
数组
方式
海量
资料
长度
中文
参考
测试
验证
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
保险科技 互联网保险
互联网科技巨头监管
互联网属科技
互联网巨头科技公司
喔噻互联网科技
互联网科技英文
杭州互联网科技公司
无线互联网科技
互联网科技大会
四川狮子座互联网科技
互联网教育科技公司vipkid
乌苏新华互联网科技做什么的
特约风豹互联网科技为什么扣费
云南省自由互联网科技有限公司
郑州欣桑互联网科技有限公司
互联网时代高科技布局
科技互联网专业工作会议发言稿
河南商务圈互联网科技有限公司
恒生科技互联网指数十大成分股
高科技和互联网的现代国家
哈尔滨大商圈互联网科技有限公司
互联网科技官网
金融科技 互联网金融
互联网科技大会案例
海南科技产业互联网平台
广州慧亚互联网科技怎么样
互联网金融科技公司干啥的
亳州好赞互联网科技有限公司
优雇互联网科技有限公司
互联网科技创新方面的资料