phpmyadmin创建mysql的存储过程
通过phpmyadmin ,创建procedure,
用于生成测试数据。
随机的用户名及手机号。
DELIMITER $$
CREATE PROCEDURE `sp_insert_test_users`(IN `para_count` INT)
BEGIN
DECLARE p_username varchar(50);
DECLARE p_countryCallingCode varchar(10) default '';
DECLARE p_phone varchar(20);
DECLARE p_all_phone varchar(20);
DECLARE p_create_time datetime;
DECLARE p_index int default 0;
DECLARE p_userid int default 0;
IF para_count > 0 THEN
SET p_create_time = NOW(); while p_index < para_count do select concat(
substring('ABCDEFGHIJKLMNOPQRSTUVWXYZ', rand()*26 , 1),
substring('abcdefghijklmnopqrstuvwxyz', rand()*26 , 1),
substring('abcdefghijklmnopqrstuvwxyz', rand()*26 , 1),
substring('abcdefghijklmnopqrstuvwxyz', rand()*26 , 1),
substring('abcdefghijklmnopqrstuvwxyz', rand()*26 , 1),
substring('abcdefghijklmnopqrstuvwxyz', rand()*26 , 1),
substring('abcdefghijklmnopqrstuvwxyz', rand()*26 , 1),
substring('abcdefghijklmnopqrstuvwxyz', rand()*26 , 1)
) into p_username; select concat(
'',
substring('', rand()* 10 , 1),
substring('', rand()* 10 , 1),
substring('', rand()* 10 , 1),
substring('', rand()* 10 , 1),
substring('', rand()* 10 , 1),
substring('', rand()* 10 , 1),
substring('', rand()* 10 , 1),
substring('', rand()* 10 , 1)
) into p_phone; if not exists ( select 1 from users where username = p_username or phone = p_phone )
and length(p_username) = 8 and length(p_phone) = 11
then set p_all_phone = concat(p_countryCallingCode,';',p_phone); INSERT INTO `users`
(`username`, `countryCallingCode`, `phone`, `_phone`,
`group`, `created_at`, `updated_at`)
VALUES
(p_username,p_countryCallingCode,p_phone,p_all_phone,
'user', p_create_time, p_create_time); select @@IDENTITY into p_userid; INSERT INTO `users_test_mock`
(`userid`,`username`, `countryCallingCode`, `phone`)
VALUES
(p_userid,p_username,p_countryCallingCode,p_phone); SET p_index = p_index + 1; end if; end while; END IF; END$$
DELIMITER ;
调用:
call sp_insert_test_users(10);
phpmyadmin创建mysql的存储过程的更多相关文章
- MYSQL中存储过程的创建,调用及语法
MySQL 存储过程是从 MySQL 5.0 开始增加的新功能.存储过程的优点有一箩筐.不过最主要的还是执行效率和SQL 代码封装.特别是 SQL 代码封装功能,如果没有存储过程,在外部程序访问数据库 ...
- 创建MySQL存储过程示例
创建MySQL存储过程是学习MySQL数据库必须要掌握的知识,下文对创建MySQL存储过程作了详细的介绍,供您参考学习. AD:2013大数据全球技术峰会课程PPT下载 下文将教您如何创建MySQL存 ...
- phpMyAdmin中mysql的创建数据库时的编码的问题
转载自新浪博客 Sean 一. mysql中utf8编码的utf8_bin,utf8_general_cs,utf8_general_ci的区别 utf8_general_ci 不区分大小写,这 ...
- mysql 内置功能 存储过程 创建无参存储过程
操作哪个数据库,就把存储过程建到那个数据库 例如 现在use db2; 应该把存储过程 建立到db2数据库里 创建无参存储过程 delimiter // # 设置mysql结束符合为// create ...
- 使用Navicat 创建mysql存储过程,实现日期加流水号序列
目的:使用Navicat 创建mysql存储过程,实现格式为8位日期(年月日)+5位流水号序列. 步骤: 1.打开Navicat 登录数据库,点击导航栏上的函数,如下图: 2.点击新建函数,选择“过程 ...
- Adminer - 类似于phpMyAdmin的MySQL管理客户端
Adminer是一个类似于phpMyAdmin的MySQL管理客户端.整个程序只有一个PHP文件,易于使用和安装.Adminer支持多语言(已自带11种翻译语言文件,可以按自己的需求翻译相应的语言). ...
- mysql之存储过程
一.存储过程 迄今为止,使用的大多数 SQL语句都是针对一个或多个表的单条语句.并非所有操作都这么简单,经常会有一个完整的操作需要多条语句才能完成.例如,考虑以下的情形. 1. ...
- [转]MySQL中存储过程权限问题
MySQL中以用户执行存储过程的权限为EXECUTE 比如我们在名为configdb的数据库下创建了如下存储过程,存储过程的定义者为user_admin use configdb; drop proc ...
- MySQL的存储过程1
来源:http://blog.sina.com.cn/s/blog_52d20fbf0100ofd5.html MySQL的存储过程 2. 关于MySQL的存储过程存储过程是数据库存储的一个重要的功能 ...
随机推荐
- 微软develop apps在QQ上部分功能的实现
最近我对微软的develop apps的文档进行了简读,在感叹UWP在支持服务上的全面的同时,我不禁在在常用的APP上对于这些功能支持进行了部分的寻找对应.而我进行功能对照的,就是平时很常用的一款手机 ...
- 简单了解Django
Django 是开源代码web应用的框架,由python完成,django的主要目的是简便,快速开发数据库驱动网站 主要用于测试,运维,自测. 1.下载Django. 个人建议使用命令pip inst ...
- 简单css实现input提示交互动画效果
通过基础CSS实现输入提示交互动画效果,并兼容各浏览器! 1.效果展示 2.css代码 h4 { margin: 30px 0; } input { margin:; font-size: 16px; ...
- angular-指令
ng-app 作用域 ng-init 声明 module 模块 ng-model 双向绑定 ng-bind 绑定 angular是一个MVC框架:即 M------------------module ...
- kafka中zookeeper的操作
bin/zookeeper-shell.sh localhost:2181 <<< "get /brokers/ids/4" ./zkCli.sh -server ...
- Python小练习之判断一个日期是一年的第几天
python练手遇到的一个问题写了个统一公式,不用麻烦的分各种类,如果有人测试出错误请评论通知. #分单双月 def dayNum(month,day,isLeap): if month % 2 != ...
- EmguCV使用Stitcher类来拼接图像
using System; using System.Windows; using System.Collections.Generic; using System.ComponentModel; u ...
- VSCode插件开发全攻略(九)常用API总结
更多文章请戳VSCode插件开发全攻略系列目录导航. 本文提炼一些常见的API使用场景供参考,本文内容有待完善. 编辑器相关 修改当前激活编辑器内容 替换当前编辑器全部内容: vscode.windo ...
- Android开发 - 掌握ConstraintLayout(八)障碍线(Barrier)
本文我们来介绍障碍线(Barrier)的使用,平常在开发中用的相对要少一些,但是在需要时会非常方便. 它的作用是将多个元素放到这个障碍线里面使时,其中的任何元素的大小或位置变化时都会使它的位置进行改变 ...
- BCrypt实现密码的加密
这里设计到一个新的知识点,下来准备找找资料学习一下:Spring Security 我们都知道,密码这种东西存到数据库是不能以明文直接存入的,而是要经过加密,而且加密还颇多讲究 比如以前的 MD5加密 ...