mysql使用存储过程批量生成学生表、课程表和成绩表测试数据
来源:互联网 发布:如何预防网络电信诈骗 编辑:程序博客网 时间:2024/06/06 13:06
create table Course(
c_id int PRIMARY KEY,
name varchar(10)
)
create table Student(
id int PRIMARY KEY,
name varchar(10)
)
CREATE table SC(
sc_id int PRIMARY KEY,
s_id int,
c_id int,
score int
)
//课程表写入100条数据
DELIMITER ;;
CREATE PROCEDURE test_insert_c()
BEGIN
DECLARE Y INT DEFAULT 1;
WHILE Y<=100
DO
INSERT INTO test.Course VALUES(Y,CONCAT('课程',Y));
SET Y=Y+1;
END WHILE ;
COMMIT;
END;;
CALL test_insert_c();
//学生表写入70000条数据
DELIMITER ;;
CREATE PROCEDURE test_insert()
BEGIN
DECLARE Y INT DEFAULT 1;
WHILE Y<=70000
DO
INSERT INTO test.Student VALUES(Y,CONCAT('学生',Y));
SET Y=Y+1;
END WHILE ;
COMMIT;
END;;
CALL test_insert();
//成绩表写入700000条数据
DELIMITER ;;
CREATE PROCEDURE test_insert_sc()
BEGIN
DECLARE Y INT DEFAULT 1;
DECLARE s_id INT DEFAULT 1;
DECLARE c_id INT DEFAULT 1;
DECLARE score INT DEFAULT 1;
WHILE Y<=700000
DO
INSERT INTO test.SC VALUES(Y,s_id,c_id,score);
SET Y=Y+1;
SELECT FLOOR(1 + (RAND() * 100)) into c_id;
SELECT FLOOR(1 + (RAND() * 100)) into score;
SELECT FLOOR(1 + (RAND() * 70000)) into s_id;
END WHILE ;
COMMIT;
END;;
CALL test_insert_sc();
说明:
DELIMITER生命结束符,定义命令结束,默认为;
c_id int PRIMARY KEY,
name varchar(10)
)
create table Student(
id int PRIMARY KEY,
name varchar(10)
)
CREATE table SC(
sc_id int PRIMARY KEY,
s_id int,
c_id int,
score int
)
//课程表写入100条数据
DELIMITER ;;
CREATE PROCEDURE test_insert_c()
BEGIN
DECLARE Y INT DEFAULT 1;
WHILE Y<=100
DO
INSERT INTO test.Course VALUES(Y,CONCAT('课程',Y));
SET Y=Y+1;
END WHILE ;
COMMIT;
END;;
CALL test_insert_c();
//学生表写入70000条数据
DELIMITER ;;
CREATE PROCEDURE test_insert()
BEGIN
DECLARE Y INT DEFAULT 1;
WHILE Y<=70000
DO
INSERT INTO test.Student VALUES(Y,CONCAT('学生',Y));
SET Y=Y+1;
END WHILE ;
COMMIT;
END;;
CALL test_insert();
//成绩表写入700000条数据
DELIMITER ;;
CREATE PROCEDURE test_insert_sc()
BEGIN
DECLARE Y INT DEFAULT 1;
DECLARE s_id INT DEFAULT 1;
DECLARE c_id INT DEFAULT 1;
DECLARE score INT DEFAULT 1;
WHILE Y<=700000
DO
INSERT INTO test.SC VALUES(Y,s_id,c_id,score);
SET Y=Y+1;
SELECT FLOOR(1 + (RAND() * 100)) into c_id;
SELECT FLOOR(1 + (RAND() * 100)) into score;
SELECT FLOOR(1 + (RAND() * 70000)) into s_id;
END WHILE ;
COMMIT;
END;;
CALL test_insert_sc();
说明:
DELIMITER生命结束符,定义命令结束,默认为;
阅读全文
0 0
- mysql使用存储过程批量生成学生表、课程表和成绩表测试数据
- mysql存储过程,生成测试数据
- 学生表/课程表/教师表/成绩表-多表查
- 创建学生表、课程表、成绩表sql语句
- MySQL使用存储过程批量插入百(千)万测试数据
- 学生表/教师表/课程表/成绩表常见SQL查询
- 学生表/教师表/课程表/成绩表常见SQL查询
- 学生表/教师表/课程表/成绩表常见SQL查询
- 学生表 课程表 成绩表 教师表常用SQL语句
- sql面试题 学生表, 课程表,成绩表,教师表
- sql面试题 学生表, 课程表,成绩表,教师表
- sql面试题(学生表_课程表_成绩表)
- mysql 使用 存储过程制造测试数据
- mysql使用存储过程插入测试数据
- 存储过程 造批量测试数据
- 使用mysql存储过程快速插入百万mysql测试数据
- mysql存储过程创建测试数据
- sql语句多表查询(学生表/课程表/教师表/成绩表 )
- 【知了堂学习笔记】简单了解java集合类
- AngularJs的点击删除,排序,查询
- Apache ActiveMQ 各个版本所依赖的JDK版本
- 二叉树的存储结构
- 图像形态学运算之腐蚀-膨胀篇
- mysql使用存储过程批量生成学生表、课程表和成绩表测试数据
- 关于Unicode编码和ANSI编码(2)
- ubuntu下lua插件使用方式
- 20170916
- 基于平板电脑的面访调查APP
- LeetCode#169 Majority Element题解(C++版)
- 暴搜 栅栏
- ActiveMQ安装配置 和 使用简例
- 2017.09.17有感