如下图所示,函数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 自动生成编号函数

    根据需求,保存表数据时需要自动生成一个编号,格式如:AA-2020-03-31-0001  (AA-yyyy-MM-dd-序号).数据库用的mysql,所以创建一个mysql函数. 1.建表: cre ...

  2. mysql随机生成中文姓名_mysql 随机生成姓名函数,及模拟大量测试数据

    如下图所示,函数rand_name,过程insert_user: -- 开启允许创建函数 set global log_bin_trust_function_creators = 1; -- 创建随机 ...

  3. mysql生成序列_mysql 自动生成编号函数

    根据需求,保存表数据时需要自动生成一个编号,格式如:AA-2020-03-31-0001  (AA-yyyy-MM-dd-序号).数据库用的mysql,所以创建一个mysql函数. 1.建表: cre ...

  4. python生成姓名,python自动生成姓名

    # Author:BeeLe # -*- coding: utf-8 -*- import random def XM(): xing = ['赵', '钱', '孙', '李', '周', '吴', ...

  5. mysql 视图 分页_mysql查看所有存储过程,函数,视图,触发器,表,分页

    查询数据库中的存储过程和函数 方法一: select `name` from mysql.proc where db = 'your_db_name' and `type` = 'PROCEDURE' ...

  6. mysql 定义存储过程_mysql——定义——存储过程和函数——概念

    存储过程和函数是指将经常使用的一组SQL语句组合在一起,并将这些SQL语句当作一个整体存储在服务器中 一.创建存储过程 语法格式: create procedure sp_name ( [ proc_ ...

  7. php mysql 时间戳查询_mysql中时间查询函数(包括时间戳)

    mysql中时间查询函数(包括时间戳) 这些函数都是MySQL自带的,可以直接使用在PHP写的MySQL查询语句中哦 1-CURDATE()或CURRENT_DATE()和CURTIME()或CURR ...

  8. mysql导出包_mysql导入导出包括函数或者存储过程

    mysql导入导出包括函数或者存储过程 1.mysql导出整个数据库 mysqldump -h hostname -u username -p  databasename > backupfil ...

  9. mysql 存储过程代码_MySQL存储过程及常用函数代码解析

    mysql存储过程的概念: 存储在数据库当中可以执行特定工作(查询和更新)的一组SQL代码的程序段. mysql函数的概念: 函数是完成特定功能的SQL语句,函数分为内置函数和自定义函数(user-d ...

  10. mysql教程排序_MySQL中的排序函数field()实例详解

    前言 我们在日常开发过程中,排序是经常用到的,有时候有这样的需求. 比如,需要在查询结果中根据某个字段的具体值来排序.如下面例子 上面是一张个人信息 表,假如我们想按照'seiki','iris',' ...

最新文章

  1. 顶配12699 元、没有5G,“浴霸三摄”的iPhone你会买吗?
  2. 如何释放 DB_RECOVERY_FILE_DEST_SIZE
  3. VRRP+MSTP 实现流量分流与核心层备份
  4. 《系统集成项目管理工程师》必背100个知识点-95我国信息化基本原则
  5. mahout in Action2.2-给用户推荐图书(2)-分析对用户推荐书目的结果
  6. ACM PKU 2559 Largest Rectangle in a Histogram http://acm.pku.edu.cn/JudgeOnline/problem?id=2559
  7. 计算机基础知识 音频,计算机基础知识(总结+试题).pdf
  8. Flex DataGrid的labelFunction用法例子
  9. xenserver 突破VID 2T限制
  10. 会话技术——Cookie和Session
  11. ESS And 迅雷5 让我不能上网
  12. ❤100款程序员爱情❤520/表白/七夕情人节/求婚❤专用html5+css3+js 炫酷动画网页的源代码(建议收藏)
  13. 图像的像素、分辨率、像元尺寸、大小、清晰度的关系
  14. 志在必得的。。。。失败。。。
  15. winfows 切换 双屏_win10多个桌面切换快捷键 win10怎样设置双屏显示两个桌面
  16. android adb命令唤醒屏幕,如何使用adb命令打开和关闭屏幕?
  17. MATLAB利用仿射变换实现图像的缩放,旋转,剪切,平移操作
  18. Python练习 4.26 ~ 5.6
  19. zz 0ffice 2007 something.....
  20. 使用python开发一个pdf合并工具

热门文章

  1. 【linux】centos6.9通过virtualenv安装python3.5
  2. SqlServer 的一个坑
  3. win7 C盘空间越来越小 Windows文件夹变大的问题
  4. apache无权限访问(You don't have permission to access /docs/index.html on this server)
  5. asterisk queue 队列
  6. .net 常识 impersonate user 模拟用户
  7. 【Research Paper】
  8. 知识图谱中的结构信息建模
  9. 从零基础入门Tensorflow2.0 ----七、34 embedding rnn
  10. Ubuntu16.04使用时的一些问题总结