您好,登錄后才能下訂單哦!
今天小編分享的是關于mysql自動生成大量數據的方法,可能大家對mysql并不陌生,或者從來沒有了解過mysql。但是不用擔心,今天小編會以最簡單的描述來講解mysql自動生成大量數據的方法。
mysql自動生成大量數據
為了學習驗證高性能mysql,自動生成大量的數據做測試。內容來源于網絡。
創建隨機數字生成
DELIMITER $$ CREATE DEFINER=`root`@`%` FUNCTION `random_num`( ) RETURNS int(5) BEGIN DECLARE i INT DEFAULT 0; SET i = FLOOR(100+RAND()*10); RETURN i; END$$ DELIMITER ;
生成隨機字符串
DELIMITER $$ CREATE DEFINER=`root`@`%` FUNCTION `random_string`(n INT) RETURNS varchar(255) CHARSET latin1 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(1+RAND()*52),1)); SET i = i + 1; END WHILE; RETURN return_str; END$$ DELIMITER ;
生成隨機數字,返回varchar類型數據組合,例如手機號
DELIMITER $$ CREATE DEFINER=`root`@`%` FUNCTION `random_string_phone`(n INT) RETURNS varchar(255) CHARSET latin1 BEGIN DECLARE chars_str VARCHAR(100) DEFAULT '1234567890'; 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(1+RAND()*10),1)); SET i = i + 1; END WHILE; RETURN return_str; END$$ DELIMITER ;
創建用戶表myisam引擎
CREATE TABLE `sys_user_myisam` ( `user_id` bigint(100) NOT NULL AUTO_INCREMENT, `username` varchar(100) DEFAULT NULL COMMENT '用戶名', `password` varchar(100) DEFAULT NULL COMMENT '密碼', `salt` varchar(100) DEFAULT NULL COMMENT '鹽', `email` varchar(100) DEFAULT NULL COMMENT '郵箱', `mobile` varchar(100) DEFAULT NULL COMMENT '手機號', `status` int(1) DEFAULT '1' COMMENT '狀態 0:禁用 1:正常', PRIMARY KEY (`user_id`) ) ENGINE=MyISAM AUTO_INCREMENT=1000001 DEFAULT CHARSET=utf8 COMMENT='系統用戶MyISAM';
創建存儲過程生成數據
DELIMITER $$ CREATE DEFINER=`root`@`%` PROCEDURE `insert_sys_user_myisam`(IN START INT(10),IN max_num INT(10)) BEGIN DECLARE i INT DEFAULT 0; SET autocommit = 0; REPEAT SET i = i + 1; INSERT INTO sys_user_myisam (user_id,username,password,salt,email,mobile,status) VALUES (START+i,random_string(10),random_string(6),random_string(10),random_string(20),random_string_phone(12),1); UNTIL i = max_num END REPEAT; COMMIT; END$$ DELIMITER ;
創建表innodb引擎
create table sys_user_innodb ENGINE=MyISAM AUTO_INCREMENT=1000001 DEFAULT CHARSET=utf8 as select * from sys_user_myisam;
以上就是以上就是 針對服務器Windows 做了簡略的介紹,當然詳細使用上面的不同還得要大家自己使用過才領會。如果想了解更多,歡迎關注億速云行業資訊頻道哦!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。