qileilove

blog已经转移至github,大家请访问 http://qaseven.github.io/

用存储过程&DataFactory准备测试数据

 假设我们有以下2张表: student , detail_info 。(MySQL版本)
  其他detail_info的外键是name (也就是说detail_tail 中name的值要在student中有)
  < xmlnamespace prefix ="o" ns ="urn:schemas-microsoft-com:office:office" />
  现在准备需要往这两张表中插入数据供测试时使用,
  方法一,手动插入
  必须选插入一条记录到student中,然后再插入一条到detail_info,且name要在student中有。
  方法二,利用MySQL的存储过程
  2.1 创建存储过程 (一次插入一条数据)
  代码块
  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;
  2.2 调用存储过程
  查询相应的表检查
  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
  ……
  数据验证
  小结:
  利用存储过程添加数据较方便,但需要自己编写sql语句块。有关mysql的存储过程只在mysql5以后才能使用,详细的介绍请参考网络。
  DataFactory 在创建大数据量是更有优势,但设置起来比较麻烦,需要对每个字段进行设置。有关DataFactory的详细操作,如有兴趣,可另外讨论。这里只是介绍一下。

posted on 2014-07-28 10:10 顺其自然EVO 阅读(198) 评论(0)  编辑  收藏 所属分类: 数据库


只有注册用户登录后才能发表评论。


网站导航:
 
<2014年7月>
293012345
6789101112
13141516171819
20212223242526
272829303112
3456789

导航

统计

常用链接

留言簿(55)

随笔分类

随笔档案

文章分类

文章档案

搜索

最新评论

阅读排行榜

评论排行榜