-- 开启允许创建函数
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);-- 创建随机生成手机号函数 generatePhone
delimiter $$
CREATE  FUNCTION `generatePhone`() RETURNS char(11) CHARSET utf8DETERMINISTIC
BEGINDECLARE head VARCHAR(200) DEFAULT '134,135,136,137,138,139,147,150,151,152,157,158,159,182,183,184,187,188,130,131,132,145,155,156,185,186,199,133,153,180,181,189';DECLARE content CHAR(10) DEFAULT '0123456789';DECLARE phone CHAR(11) DEFAULT substring(head, 1+(FLOOR(1 + (RAND() * 3))*4), 3);DECLARE i int DEFAULT 1;DECLARE len int DEFAULT LENGTH(content);WHILE i<9 DOSET i=i+1;SET phone = CONCAT(phone, substring(content, floor(1 + RAND() * len), 1));END WHILE;RETURN phone;
end$$
delimiter ;
-- 查询随机手机号
select generatePhone();-- 创建表
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-- 创建批量生成表数据存储过程
delimiter $$
create PROCEDURE insert_user(in num int)
begin-- 记录循环次数declare i int default 0;-- 关闭自动提交set autocommit = 0;-- 循环insertwhile i < num doinsert 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(180000);-- 截取查询数据
select substr(name,1,1),'*',substr(name,3,4),1,age,'****',substr(salary ,1,4),'个人','广东' from study_user ;

mysql批量生成随机姓名、手机号等数据相关推荐

  1. java随机姓名_Java生成随机姓名、性别和年龄的实现示例

    一.定义实体类Person,封装生成的数据 package net.dc.test; public class Person { private String name; private String ...

  2. php随机生成昵称,使用PHP批量生成随机用户名

    使用PHP批量生成随机用户名 使用PHP批量生成随机用户名生成6 ~ 16位的用户名若干个,主要是文本操作,同事前提是要有一个字符串包,主要包含三个程序,都有哪些? 程序一:负责从字典中随机提取数据, ...

  3. 图书条码mysql数据库_中琅条码软件如何连接MySQL批量生成128码

    原标题:中琅条码软件如何连接MySQL批量生成128码 中琅条码软件除了支持常见的TXT,CSV.Excel等文件类型数据库,还支持MySQL.SQLServer.Access等常用数据库.下面就以M ...

  4. java 姓名_Java生成随机姓名、性别和年龄的实现示例

    一.定义实体类Person,封装生成的数据 package net.dc.test; public class Person { private String name; private String ...

  5. laravel mysql rand_laravel如何从mysql数据库中随机抽取n条数据(高性能) - Laravel学习网...

    laravel如何高性能地从mysql数据库中随机获取n条数据,有时候我们常常会需要从数据库随机获取数据,比如:给工作人员随机分配10个订单,随机从数据库中随机抽查100个用户:这样我们就需要随机从数 ...

  6. shell脚本执行php文件_分享两个shell脚本实例--批量生成随机字符文件名和批量改名...

    概述 在计算机科学中,for循环(英语:for loop)是一种编程语言的迭代陈述,能够让程式码反复的执行. 它跟其他的循环,如while循环,最大的不同,是它拥有一个循环计数器,或是循环变数.这使得 ...

  7. python生成随机个人信息——python批量生成随机信息

    实验:python批量生成随机信息 这个实验很简单,直接上代码了~~ 一.常用汉字的Unicode编码   在unicode码中,汉字的范围是(0x4e00,0x9fbf),但是其中包含了很多生僻字或 ...

  8. mysql 批量生成测试数据_mysql生成批量数据进行数据测试

    1.1目的 在MySQL很多测试场景,需要人工生成一些测试数据来测试.本文提供一个构造MySQL大表存储过程,可以生成包含用户名,手机号码,出生日期等字段.也可以通过滤重来使得手机号码不重复,模拟现实 ...

  9. 接口自动化-接口请求数据准备-如何生成随机姓名、年龄、号码、email等

    在做接口自动化测试的时候,经常需要一些随机的测试数据,这里提供一个个人使用的生成随机值的工具类,主要内容都已在代码中注释: package com.gvbrain.appApi.Utils;impor ...

  10. MySQL 批量生成 SQL 脚本语句解决实际的业务需求/如何拼接字符串/拼接字符串的 SQL 语句

    文章目录 实际需求 分析思路 写拼接 SQL 脚本的脚本语句 执行得到脚本语句 保存成 SQL 脚本文件 实际需求 有些行政区域的字段 area_fullname 是空的,如何补全呢?如下所示: 分析 ...

最新文章

  1. Swift中的问号?和感叹号!
  2. 属性为nil的时候测试是否crash  nil是不会崩溃的
  3. 数据可视化应用案例:麦当劳和肯德基全国门店分布,谁才是分布最广的炸鸡店?
  4. Linux 下安装与卸载JDK
  5. Codeforces Round #740 (Div. 2, based on VK Cup 2021 - Final (Engine))
  6. python读取sqlserver的数据_Python:使用并发未来进程P读取sqlserver数据
  7. linux hexdump显示格式c数组,hexdump命令
  8. 中职升高职c语言程序设计教程课后答案,中职C语言教学创新与实践论文
  9. android os n9005,SM-N9005
  10. mysql5.7.10 二进制包_MYSQL5.7二进制包的安装
  11. 对于一个html元素,有几种方法修改样式方法的优先级,HTMLCSS常见面试题及疑难解答...
  12. 视频号直播带货成交的三大关键
  13. ubuntu mysql 5.7 出错_ubuntu mysql5.7 启动提示错误:/var/run/mysqld/mysqld.sock
  14. FastCGI介绍(快速通用网关接口)
  15. SQL19 查找所有员工的last_name和first_name以及对应的
  16. 决策理论(Decision theory)自动规划和调度(Automated planning and scheduling)(双语)
  17. jsr、jcp和harmony的介绍
  18. 国内智能音箱生态系统对比分析
  19. 3D打印切片软件--cura的二次开发(2)(界面分析与汉化)(修改版增加图片)
  20. 自主导航小车实践(一)

热门文章

  1. 中国城市群产业建设风险与投资发展决策建议报告2022版
  2. 用matlab符号计算求解二元函数极值
  3. DNS与NS、NS记录
  4. NS和DNS的区别有哪些?
  5. 原生列表table固定表头
  6. 一文搞定YOLO3代码详解
  7. sensor接口之DVP
  8. mapbox地图点位图像更新
  9. uni-app框架简介
  10. java web 常见面试题_2019最新Javaweb面试题及答案