DataFactory造数-学习问题记录

记录一:常量值插入中文后,数据库该字段(中文)显示乱码

环境:win7(64位)、DataFactory5.6版本(32位)、myodbc5.3.11(32位)
问题:DataFactory执行后,往数据库插入中文字段,该中文字段出现乱码
在这里插入图片描述
解决办法:odbc添加数据源时,选择MYSQL ODBC 5.3 ANSI Driver,且连接数据库时,detail中字符集选项默认为空
在这里插入图片描述
在这里插入图片描述

记录二:同一张表中,字段生成顺序

若一个字段是由其他字段组合成的,则该字段应位于其他字段的下方,晚于其他字段生产,否则会出现错误(生成字段值与其他字段不对应)
Eg.ND为2019,YD为1,RD为1~31的随机数;RQ值为RD10000+YD100+RD
则RQ位置应于ND、YD、RD的下方(否则生成的RQ与ND、YD、RD计算出来的值不对应)
在这里插入图片描述

记录三:外部txt文件的引入

(1)右击项目名称选择Insert Create Datatable
在这里插入图片描述
(2)选择文件并导入
在这里插入图片描述
(3)字段设置,选择Insert value from a data table
其中Retrieval Method方法包括:
Select a record at random(随机选择)
Select records sequentially(顺序选择)
Synchronize with other fileds from the same table(与相同数据表其他字段采用同步方式)
在这里插入图片描述

记录四:多张表放在同一个脚本中

多张表放在一个脚本进行数据模拟的时候,会顺序执行数据生成,因此在设置表数据引用时需要注意表顺序。

记录五:设置主从表

(1)右键点击主表,选择Add Child Table
在这里插入图片描述
(2)选择子表(PS:一次只能选一张)后,可直接选择主从表需要一一对应的字段
PS:其中Records 1 to 5是指一个范围,随机生成1到5条数据(并不是指1条主表的数据对应生成5条从表的数据),所以,若是要使主表的一条数据对应生成从表5条数据,则应填入Records 5 to 5
在这里插入图片描述

记录六:同一张表中,一次生成多条数据,其中表中B字段的取值是生成的A的求和

同一张表中,一次生成多条数据,其中表中B字段的取值是生成的A的求和,则B字段取值可选择Insert value from an arithmetic expression,表达式为{f:A}+{f:B}(PS:B字段option中的Insert sequential valuesstart值应选择0,若start值选择为1,第一个B取值会等于A+1)。
PS:在生成第1条数据,B字段未生成但又需要用到时,取的值为Insert sequential values中的start值;当生成第1条以后,第2条数据的B字段未生成但又需要用到时,取的值为上一条的B字段的值
在这里插入图片描述

记录七:两张表中,A表.A字段(一条数据)是B表.B字段(多条数据)的总和

Eg.B表生成12个月份的每月酒店入住人数数据(共12条数据,每个月份1条),A表只需要生成1条该年份的数据,其中该年酒店入住人数为B表中的每月酒店入住人数总和,则A表的酒店入住人数求和为Insert value from an SQL database
SQL语句为:

Select sum(每月酒店入住人数)
From B表
Where ND={f:ND}

记录八:引用{f:VALUE}格式注意

使用Insert value from an SQL database编辑SQL语句时,引用{f:VALUE}格式,需注意该格式只适用于VALUE字段是numeric格式

记录九:DataFactory生成时间,时间格式的修改

在这里插入图片描述

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值