MySQL快速建立测试表
1:只要已经存在表结构的
第一种方式:
CREATE TABLE T1
SELECT * FROM mysql.user
WHERE 1=2;
第二种方式:
CREATE TABLE T2
LIKE mysql.user;
mysql> CREATE TABLE t1
-> LIKE mysql.user;
Query OK, 0 rows affected (0.01 sec) mysql> CREATE TABLE t2
-> SELECT * FROM mysql.user
-> WHERE 1=2;
Query OK, 0 rows affected (0.00 sec)
Records: 0 Duplicates: 0 Warnings: 0
2:表结构和数据都要的
CREATE TABLE T1
SELECT * FROM mysql.user
3:需要100W的数据量
DROP TABLE IF EXISTS testdata;
CREATE TABLE testdata
(id int,name varchar(10)); DROP PROCEDURE IF EXISTS pro_testdata; DELIMITER &&
CREATE PROCEDURE pro_testdata(IN inr int)
BEGIN
DECLARE i INT DEFAULT 0;
START TRANSACTION;
WHILE i<inr DO
INSERT INTO testdata(id,name) values(i,'gechong');
SET i=i+1;
END WHILE;
COMMIT;
END && DELIMITER ;
call pro_testdata(1000000);
mysql> SELECT COUNT(1) FROM testdata;
+----------+
| COUNT(1) |
+----------+
| 0 |
+----------+
1 row in set (0.00 sec) mysql> CALL pro_testdata(10000);
Query OK, 0 rows affected (0.24 sec) mysql> SELECT COUNT(1) FROM testdata;
+----------+
| COUNT(1) |
+----------+
| 10000 |
+----------+
1 row in set (0.00 sec)
如果表结构不满足要求做简单修改即可。
参数类型:in、out、inout
in表示:调用者传给存储过程
out表示:存储过程返回给调用者的
inout:MySQL 存储过程 inout 参数跟 out 类似,都可以从存储过程内部传值给调用者。不同的是:调用者还可以通过 inout 参数传递值给存储过程。
DROP PROCEDURE IF EXISTS proinout;
DELIMITER &&
CREATE PROCEDURE proinout (in id1 int,out id2 int)
BEGIN
SELECT id INTO id2 FROM t
WHERE id = id1;
END && DELIMITER ;
调用
call proinout(100,@id_num);
SELECT @id_num;
MySQL快速建立测试表的更多相关文章
- mysql 快速清除数据表数据
mysql> truncate tables; 例如: mysql> truncate email_managements;
- 在mysql数据库中制作千万级测试表
在mysql数据库中制作千万级测试表 前言: 最近准备深入的学一下mysql,包括各种引擎的特性.性能优化.分表分库等.为了方便测试性能.分表等工作,就需要先建立一张比较大的数据表.我这里准备先建一张 ...
- MySQL快速回顾:数据库和表操作
前提要述:参考书籍<MySQL必知必会> 利用空闲时间快速回顾一些数据库基础. 4.1 连接 在最初安装MySQL,可能会要求你输入一个管理登录(通常为root)和一个口令(密码). 连接 ...
- MySQL快速生产表的描述
# mysql快速生成表的描述 SELECT column_name AS `列名`, CONCAT_WS(' (', data_type, character_maximum_length) AS ...
- 使用MySQL Workbench建立数据库,建立新的表,向表中添加数据
使用MySQL Workbench建立数据库,建立新的表,向表中添加数据 初学数据库,记录一下所学的知识.我用的MySQL数据库,使用MySQL Workbench管理.下面简单介绍一下如何使用MyS ...
- Mysql快速删除表中重复的数据
表结构 CREATE TABLE T_VENDOR ( ID ) NOT NULL AUTO_INCREMENT COMMENT 'ID', COUNTRY ) DEFAULT NULL COMMEN ...
- Navicat MYSQL 建立关联表 保存时遇到 cannot add foreign key constraint
首先建立user表,如下图 然后建立message表,userid用作外键,关联user表的id 点击上面的外键按钮,添加外键如下 结果保存时报错: cannot add foreign key co ...
- mysql死锁-查询锁表进程-分析锁表原因【转】
查询锁表进程: 1.查询是否锁表 show OPEN TABLES where In_use > 0; 2.查询进程 show processlist 查询到相对应的进程===然 ...
- mysql系列十一、mysql优化笔记:表设计、sql优化、配置优化
可以从这些方面进行优化: 数据库(表)设计合理 SQL语句优化 数据库配置优化 系统层.硬件层优化 数据库设计 关系数据库三范式 1NF:字段不可分; 2NF:有主键,非主键字段依赖主键; 3NF:非 ...
随机推荐
- Android之取消ViewPage+Fragment的预加载
用过ViewPage+Fragment组合的童鞋自然知道这个问题,没有遇到的同学祝愿你们永远不会遇到,呵呵.直接上关键代码 注释:setUserVisibleHint每次fragment显示与隐藏都会 ...
- 操作Wifi的工具类
有时候需要打开关闭wifi,或者是坚持状态什么的,这里我写了个工具类来完成各种操作,今后还会添加其他的功能.比如链接某个加密/不加密的wifi WifiAdmin.java package com.e ...
- 《精通Oracle SQL(第2版) 》
<精通Oracle SQL(第2版) > 基本信息 作者: (美)Karen Morton Kerry Osborne Robyn Sands Riyaj Shamsud ...
- Asp.Net Core获取当前上下文对象
HttpContext简介 .Net Core中的HttpContext上下文是个抽象类,命名空间为Microsoft.AspNetCore.Http 所在程序集 \netstandard2.0\Mi ...
- [转]InnoDB和MyISAM区别
From : http://blog.csdn.net/ghosc/article/details/5391544 MySQL作为当前最为流行的免费数据库服务引擎,已经风靡了很长一段时间,不过也许也有 ...
- cplusplus 库 在线管理; 类似于 python的 pip install 、nodejs 的npm模块
cplusplus 库 在线管理: 类似于 python的 pip install .nodejs 的npm模块 还有 apache 经常使用的 Apache Ivy 项目依赖管理工具/Maven 这 ...
- opengl 教程(24) shadow mapping (2)
原帖地址:http://ogldev.atspace.co.uk/www/tutorial24/tutorial24.html 本篇教程中,我们通过shadowmap来实现阴影渲染. 我们知道shad ...
- 第二十五章 springboot + hystrixdashboard
注意: hystrix基本使用:第十九章 springboot + hystrix(1) hystrix计数原理:附6 hystrix metrics and monitor 一.hystrixdas ...
- Backbone.js 的 View 中定义事件
使用 Backbone 的 View 时,可以象传统 jQuery 那样定义事件,$("selector").click(function(){...}).幸运的是 Backbon ...
- a标签置灰不可点击
a标签的title属性可以实现鼠标放上去显示信息的功能 <a title="编辑" href ="javascript:return false;" on ...