当前位置: 首页 > news >正文

网站架构的建设岳阳建设网站

网站架构的建设,岳阳建设网站,纪检监察网站建设的意义,长沙市网站推广公司文章目录 前言一、表二、使用函数生成设置允许创建函数产生随机字符串产生随机数字 三、创建存储过程插入角色表插入用户表 四、执行存储过程小结五、使用 Navicat自带的数据生成 前言 在开发过程中我们不管是用来测试性能还是在生产环境中页面展示好看一点, 又或者学习验证某… 文章目录 前言一、表二、使用函数生成设置允许创建函数产生随机字符串产生随机数字 三、创建存储过程插入角色表插入用户表 四、执行存储过程小结五、使用 Navicat自带的数据生成 前言 在开发过程中我们不管是用来测试性能还是在生产环境中页面展示好看一点, 又或者学习验证某一知识点经常需要一些测试数据, 这个时候如果手敲的话, 十行二十行还好, 多了就很死亡了, 接下来介绍两种常用的MySQL测试数据批量生成方式 存储方式函数Navicat的数据生成 一、表 准备了两张表 角色表: id: 自增长role_name: 随机字符串, 不允许重复orders: 1-1000任意数字 用户表: id: 自增长username: 随机字符串, 不允许重复password: 随机字符串, 允许重复role_id: 1-10w之间的任意数字 建表语句: CREATE TABLE user (id int(11) NOT NULL AUTO_INCREMENT,username varchar(255) DEFAULT NULL COMMENT 用户名,role_id int(11) DEFAULT NULL COMMENT 角色id,password varchar(255) DEFAULT NULL COMMENT 密码,salt varchar(255) DEFAULT NULL COMMENT 盐,PRIMARY KEY (id) ) ENGINEInnoDB DEFAULT CHARSETlatin1;CREATE TABLE role (id int(11) NOT NULL AUTO_INCREMENT,role_name varchar(255) DEFAULT NULL COMMENT 角色名,orders int(11) DEFAULT NULL COMMENT 排序权重\r\n,PRIMARY KEY (id) ) ENGINEInnoDB DEFAULT CHARSETlatin1;二、使用函数生成 通过存储过程快速插入, 通过函数保证数据不重复 设置允许创建函数 查看 MySQL是否允许创建函数 SHOW VARIABLES LIKE log_bin_trust_function_creators;结果如图所示, 我们使用以下命令将创建函数功能打开global-所有session都生效 SET GLOBAL log_bin_trust_function_creators1; 这个时候再一次查询就会显示已打开 产生随机字符串 -- 随机产生字符串 DELIMITER $$ CREATE FUNCTION rand_string(n INT) RETURNS VARCHAR(255) BEGIN DECLARE chars_str VARCHAR(100) DEFAULT abcdefghijklmnopqrstuvwxyzABCDEFJHIJKLMNOPQRSTUVWXYZ;DECLARE return_str VARCHAR(255) DEFAULT ;DECLARE i INT DEFAULT 0;WHILE i n DO SET return_str CONCAT(return_str,SUBSTRING(chars_str,FLOOR(1RAND()*52),1)); SET i i 1;END WHILE;RETURN return_str; END $$-- 假如要删除 -- drop function rand_string;产生随机数字 -- 用于随机产生区间数字 DELIMITER $$ CREATE FUNCTION rand_num (from_num INT ,to_num INT) RETURNS INT(11) BEGIN DECLARE i INT DEFAULT 0; SET i FLOOR(from_num RAND()*(to_num -from_num1)); RETURN i; END$$-- 假如要删除 -- drop function rand_num;三、创建存储过程 插入角色表 -- 插入角色数据 DELIMITER $$ CREATE PROCEDURE insert_role(max_num INT) BEGIN DECLARE i INT DEFAULT 0; SET autocommit 0; REPEAT SET i i 1; INSERT INTO role ( role_name,orders ) VALUES (rand_string(8),rand_num(1,5000)); UNTIL i max_num END REPEAT; COMMIT; END$$-- 删除 -- DELIMITER ; -- drop PROCEDURE insert_role;插入用户表 -- 插入用户数据 DELIMITER $$ CREATE PROCEDURE insert_user(START INT, max_num INT) BEGIN DECLARE i INT DEFAULT 0; SET autocommit 0; REPEAT SET i i 1; INSERT INTO user (username, role_id, password, salt ) VALUES (rand_string(8) ,rand_num(1,100000), rand_string(10), rand_string(10)); UNTIL i max_num END REPEAT; COMMIT; END$$-- 删除 -- DELIMITER ; -- drop PROCEDURE insert_user;四、执行存储过程 -- 执行存储过程往dept表添加10万条数据 CALL insert_role(100000); -- 执行存储过程往emp表添加100万条数据编号从100000开始 CALL insert_user(100000,1100000); 小结 执行用时 10w数据差不多半分钟, 100w数据超过了20分钟, 同时 user的存储还卡死很久… 最后都成功新增, 但是自动递增值和行数不一致, 这个我也不知道因为啥… 数据展示 role表 user表 五、使用 Navicat自带的数据生成 接下来我们使用 Navicat的数据生成 直接下一步, 然后选择对应的两张表生成行数和对应的生成规则, 基于之前的执行速度, 这次 role生成 1w数据, user生成 10w数据 对于字符串类型的字段, 我们可以设置他的随机数据生成器, 根据需要进行选择 例如角色名称, 选择了 职位名称 还可以进行是否包含 null 的选择等 但是如果是 姓名 那么就会让你选择是否唯一 数字的话会让你选择范围, 默认值等 等确定好了, 我们就可以点击右下角进行生成随机测试数据 通过结果可以看到生成十一万测试数据一共用时十一秒 比第一种方法速度快很多 推荐使用
http://www.dnsts.com.cn/news/246162.html

相关文章:

  • 秦淮html5响应式网站wordpress优化 春哥
  • 怎么在阿里云建网站百度手机助手app下载官网
  • 龙岗龙城街道网站建设一个正版ps软件多少钱
  • 音乐网站制作视频教学郑州网站推广效果
  • wordpress 下载站主题德国域名申请网站
  • 威县做网站哪里好一个网站包括
  • 建设部网站如何下载规范 标准wordpress子页面内容
  • 站长工具劲爆一网科技有限公司
  • 关于网站建设论文在线快速建站
  • 平面设计图网站有哪些?网站建设汇报评估
  • 北京网站维护一般价格多少宿迁新站seo
  • 企业百度网站怎么做的网站建设工作情况报告
  • 常州网站网站建设制作网页前端
  • 餐饮网站建设可行性分析网站建设是不是要有营业执照
  • 咸阳网站开发哪家好徐州网站建设制作工作室
  • 客源汇软件效果怎么样seo优化策略
  • 百度网址大全网站大全4399曾经很火的网页游戏
  • 免费做简历的软件网站购物网站建设技术难点
  • 东莞网站建设制作价格自己怎么设计网页
  • 西安网站托管专业公司台州集团网站建设
  • html5网站开发趋势大连网站建设酷网科技
  • 公司经营范围 网站开发淄博网站开发网泰快
  • 东莞市建设质量监督网站模板网站建设推广
  • 企业网站首页布局设计做h的游戏视频网站
  • 国外设计学院网站开个平台需要多少钱
  • 河南做网站的做公司官网步骤
  • 开封做网站哪家好html网页设计期末考试
  • 怎么注册一个属于自己的网站深圳惠州网站建设公司
  • 官方网站建设制作平台wordpress 拍卖主题
  • 如果搭建网站企业邮箱怎么认证