SQLark 的数据生成一直是用户最喜欢的功能之一,可以快速批量生成 DM、Oracle、MySQL 的仿真数据,应用在开发、功能测试、性能压测等各种环节中。
👉前往 SQLark 官网:www.sqlark.com 下载全功能免费版。
SQLark 提供 8 大类 47 小类数据规则,每一种规则又提供精细的配置项,供大家灵活配置。但是在实际使用中我们发现,用户总是希望不动手或者少动手,直接点击【生成数据】,就可以生成贴近业务场景的测试数据。
为了让用户少动手,在大部分情况下都能直接“一键生成”,在之前的版本里 SQLark 已经支持根据表字段的含义、类型、精度等信息,智能匹配到姓名、身份证号、日期等数据规则。
对于表结构中最常见的外键约束,SQLark 也支持自动识别和关联,无须用户动手配置。
而在最近发布的 V3.2 版本中 ,SQLark 进一步针对表结构中的“自增列” 、“check 约束”、“虚拟列”进行了优化。下面我们以一张员工信息表 employee_info
为例,来详细了解一下。
--员工信息表
create table employee_info
(
employee_id integer identity(1, 1) not null primary key,
employee_name varchar(50) not null,
identity_card varchar(18),
job_id varchar(10) not null,
email varchar(50),
phone_num varchar(20),
gender char(1) check (gender in ('m', 'f')),
birth_date date check(birth_date > '1920-01-01' and birth_date < '2020-01-01'),
age int generated always as (datediff(year,birth_date,sysdate())) virtual
);
在上述表中含有自增列 employee_id
,在之前的版本是通过匹配“序列”规则来实现自增效果;在SQLark V3.2 中新增了“自增”的规则,可以自动识别到自增列,并完成规则匹配。
在上述表中有两个列存在 check 约束:
1、出生日期 birth_date 列存在约束 birth_date > '1920-01-01' and birth_date < '2020-01-01'
,SQLark 可以读取该约束规则,自动匹配“日期”规则并设置好出生年月范围。
2、性别 gender 列存在约束 gender char(1) check (gender in ('m', 'f'))
,SQLark 读取约束条件后自动匹配为“枚举”规则,并将’M’'F’两个值填入枚举选项中。
上表中还存在一个虚拟列 age
,由出生日期 birth_date 列通过函数计算和转换而来 datediff(year,birth_date,sysdate())
。在以往版本的数据生成中,虚拟列不能被识别,只能生成随机数据,写入数据库时会报错。在 V3.2 中,SQLark 可以识别和处理虚拟列规则,并保障生成正确的数据。
所以这一张员工信息表,以前需要在多个地方手动调整才能收获完美数据,现在只需要填一填生成行数,然后点击 【生成数据】,就可以快速准确的生成测试数据了!
文章
阅读量
获赞