如下图所示,函数rand_name,过程insert_user;

-- 开启允许创建函数

set global log_bin_trust_function_creators = 1;

-- 创建随机生成姓名函数 rand_name

delimiter $$

create function rand_name(n int) returns varchar(16)

begin

-- 初始化一个16姓氏字符串,作为姓氏字符库

declare family_str varchar (128) default '赵钱孙李周吴郑王冯陈蒋沈韩杨朱秦';

-- 初始化一个32名字字符串,作为名字字符库

declare name_str varchar (128) default '平书文若山向秋凡白斌绮烟从蕾天曼润又亦从语绮彤之玉凡梅依琴沛槐敏';

-- 记录当前是第几个

declare i int default 0;

-- 记录生成结果

declare full_name varchar(16) default '';

-- 随机名字1、2位标记

declare rand_num int DEFAULT 0;

while i < n do

-- 若获取多个姓名,则用逗号','区分

set full_name = if(i > 0, concat(full_name, ','), full_name);

-- 随机取姓氏

set full_name = concat(full_name, SUBSTR(family_str, floor(1+rand()*16), 1));

-- 随机取名字

set full_name = concat(full_name, SUBSTR(name_str, floor(1+rand()*16), 1));

-- 名字是否为双字

set rand_num = rand()*10;

set full_name = if(rand_num > 5, concat(full_name, SUBSTR(name_str, floor(1+rand()*16), 1)), full_name);

set i = i + 1;

end while;

return full_name;

end$$

delimiter ;

-- 调用函数

select rand_name(1);

-- 创建测试表 study_user

create table study_user (

id int not null auto_increment ,

name varchar(16) default null,

age int default 0,

salary int default 0,

primary key (id)

) engine = innodb default charset = utf8

-- 创建新增测试数据存储过程 insert_user(max_num)

delimiter $$

create PROCEDURE insert_user(in num int)

begin

-- 记录循环次数

declare i int default 0;

-- 关闭自动提交

set autocommit = 0;

-- 循环insert

while i < num do

insert into study_user(name, age, salary) values

(rand_name(1), floor(15 + rand()*10), floor(rand()*10000 + rand()*1000));

set i = i + 1;

end while;

commit;

end$$

delimiter ;

-- 查询结果

call insert_user(100);

select * from study_user;

mysql随机生成中文姓名_mysql 随机生成姓名函数,及模拟大量测试数据相关推荐

  1. mysql随机生成中文地址_MySQL随机生成电话号码,邮箱和中文姓名sql

    原本系统中数据量有限,还有很多是英文的,老板演示的时候觉得不专业,需要随机生成一些内容,记录一下sql以便重复利用. 1. 随机座机号码 select concat(rpad(CEIL(RAND()* ...

  2. python中文昵称-python3随机生成中文字符(随机生成两字或三字的名字)

    第一种方法:Unicode码 在unicode码中,汉字的范围是(0x4E00, 9FBF) import random def Unicode(): val = random.randint(0x4 ...

  3. python3一个中文3个字符_python3随机生成中文字符(随机生成两字或三字的名字)...

    第一种方法:Unicode码 在unicode码中,汉字的范围是(0x4E00, 9FBF) import random def Unicode(): val = random.randint(0x4 ...

  4. latex自动生成中文目录_自动生成工作表目录三种方法,看哪种适合你?

    如果在一个工作簿内有很多工作表需要去维护管理,一个个的查找显然是很麻烦的,建立一个工作表的导航目录无疑是最便捷的方法. 下面介绍三种生成工作表目录的方法: 一.利用宏表函数生成可导航目录 第1步:定义 ...

  5. mysql 截取括号内字符串_Mysql中字符串截取函数

    MySQL中字符串的截取 substring_index(str,delim,count) 函数的使用较为普遍 函数括号里面的依次为:要分隔截取的字符串(如:"aaa_bbb_ccc&quo ...

  6. mysql 写入随机字中文符_MySQL产生随机字符

    MySQL产生随机字符 UUID简介 UUID含义是通用唯一识别码 (Universally Unique Identifier),这是一个软件建构的标准,也是被开源软件基金会 (Open Softw ...

  7. mysql id不重复随机码_MySQL 随机不重复ID,该怎么处理

    mysql 随机不重复ID 如何在建表的时候 如何让主键字段 产生一个随机不重复8位无符号整数 ------解决方案-------------------- 八位最多一千万的数据 用rand随机多了怎 ...

  8. mysql脚本执行中文乱码_MySQL从命令行导入SQL脚本时出现中文乱码的解决方法

    本文实例讲述了MySQL从命令行导入SQL脚本时出现中文乱码的解决方法.分享给大家供大家参考,具体如下: 在图形界面管理工具 MySql Query Browser中打开脚本(脚本包括建库.建表.添加 ...

  9. mysql安装出现中文乱码_MySQL安装以及中文乱码问题

    1安装 最后配置文件处问题,前面有个 叉号,不能写成功.是因为安装路径不能有中文!!!! 2安装时的编码设置为utf8 3不能插入中文的问题,一插就报错!!! 表和表中属性的的字符集也要改成utf8 ...

最新文章

  1. ZOJ 2110 Tempter of the Bone(DFS)
  2. exa:一个 ls 命令的现代替代品
  3. 【PHPExcel】数学公式
  4. mysql课程设计案例_JAVA中MySQL建立连接
  5. Python基础之(面向对象初识)
  6. 每日程序C语言24-回文数字的判断
  7. 二叉树的基本操作及哈夫曼编码/译码系统的实现
  8. flowable实战(十四) 关于流程设计器 act_de_mode的表详解
  9. Lucene.Net+盘古分词-开发自己的搜索引擎
  10. 使用spring cache和ehcache之前必须了解的
  11. 阿里云服务器——centos7下源码安装tomcat9
  12. matlab循环输出图像,运用matlab实现循环语句中的多幅图像显示
  13. 机器学习笔记(二十一):决策边界
  14. 阿里云云计算6 ECS的概念
  15. 解决fake_useragent报错
  16. JSON格式转换工具
  17. 360全景视频panolens.js 实现代码
  18. 保护计算机组件免受esd,USB3.0接口的ESD防护设计
  19. 小明身高180cm,小刚身高165cm,计算两人的身高差
  20. Flash打造星火飘落效果

热门文章

  1. 绿色软件在Windows10中设置开机自启方法
  2. 金蝶如何用计算机,怎么把金蝶的报表另存在电脑上?
  3. 电动牙刷也有国产黑马,竟然比千元大牌还厉害 | 钛空实测
  4. [修練營ASP.NET]淺談多層式架構 (Multi Tiers)
  5. php转java学什么书,推荐给java软件工程师以及从java转向php程序猿的一本好书
  6. Skimage图像处理教程2)色彩空间变换
  7. 西岸风格合成器-Eventide Newfangled Audio Generate 1.2.1 WiN
  8. C语言中,开3次方用什么?
  9. 通过java获取抖音用户主页信息(2020年9月)
  10. 为什么要学数学、语文?还有英语!