加入收藏 | 设为首页 | 会员中心 | 我要投稿 银川站长网 (https://www.0951zz.com/)- 云通信、基础存储、云上网络、机器学习、视觉智能!
当前位置: 首页 > 站长学院 > MySql教程 > 正文

mysql中怎么用存储步骤&DataFactory准备测试数据

发布时间:2023-10-16 13:07:15 所属栏目:MySql教程 来源:
导读:小编给大家分享一下mysql中怎么用存储过程&DataFactory准备测试数据,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!假设我们有以下

小编给大家分享一下mysql中怎么用存储过程&DataFactory准备测试数据,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!

假设我们有以下2张表: student , detail_info 。(MySQL版本)

其他detail_info的外键是name (也就是说detail_tail 中name的值要在student中有)

现在准备需要往这两张表中插入数据供测试时使用。

方法一,手动插入

必须选插入一条记录到student中,然后再插入一条到detail_info,且name要在student中有。

方法二,利用MySQL的存储过程

创建存储过程(一次插入一条数据)

create procedure pr_add

(

v_id int, -- 打算插入的id

v_name varchar(20) –打算插入的name

)

begin

INSERT INTO `student` VALUES (v_id, v_name, 'male', '20', '2011-08-16 22:05:45' );

INSERT INTO `detail_info` VALUES (v_id, v_name, '2011-08-16', '13881954050', 'xinjiang');

end;

1.3深入一个,创建一个一次能插入多条数据的存储过程

代码块

create procedure proc_add

(

number int -- 打算新插入多少条数据

)

begin

declare v_name varchar(20);

declare v_i int;

set v_i=0;

select max(id) into v_i from student; -- 获得当前表中最大id,并存储进变量v_i

set number=v_i+number; -- 最大id

set v_i=v_i+1; -- 插入的id从当前id+1开始

while v_i<=number do -- 插入的id值从id+1 ~ number

set v_name=concat('bill' , v_i ); -- 拼接name,因为name不能相同

INSERT INTO `student` VALUES (v_i, v_name, 'male', '20', '2011-07-16' );

INSERT INTO `detail_info` VALUES (v_i, v_name, '2011-08-16 22:05:45', '13881954050', 'xinjiang');

set v_i=v_i + 1;

end while;

end;

调用

方法三,利用工具DataFactory

以上是“mysql中怎么用存储过程&DataFactory准备测试数据”这篇文章的所有内容,感谢各位的阅读!

(编辑:银川站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章