利用shell脚本构造测试表数据
关键字:
Shell、脚本语言、表数据构造、人大金仓、KingbaseES、
概述
在对数据库做测试的时候,我们往往需要构造大表、多列或多数据类型的数据,这些数据单依赖数据库sql命令执行会非常烦琐,而shell是一种脚本语言,我们可以灵活通过shell脚本语言来对不同规格的测试数据进行构造,完成测试任务。
二、数据构造实例
2.1构造1600列的表数据
1,创建多列表数据脚本
步骤1,设置数据库用户
步骤2,设置端口号
步骤3,通过ksql语句连接数据库,并创建表,其中-c代表执行单条sql语句
步骤4,使用for循环来依次增加表的列字段,并将字段设置为自增列
2,执行语句
3,在KStudio工具上检查表新增成功
4,将test_invisible表第一例插入数值
5,由于其他列为自增,所以可以看到,表中所有例都已经插入数值
2.2构造多列表数据,每列数据类型随机,优化脚本
在上文2.1我们可以通过简单脚本构建多列数据,但我们发现上文的代码只能构建列字段单一的表数据,并且将数据填入表中的步骤太过繁琐,故将上文中的脚本进行了优化更改,使其在表中能够生成更多样的数据类型,同时优化操作步骤,优化后的脚本如下。
如上代码展示了如何通过shell脚本在数据库上生成多行多例且列字段类型随机生成的方法
步骤1:设置用户名、端口号、数据库地址、生成表最大行数和生成表的最大列数等信息,并在数据库中创建表test_invisible,并在列字段a中注入数据。
步骤2:使用for循环来生成表中列字段。
步骤3:通过RANDOM%10+1来赋随机值num,并通过判断num的值来决定当前循环的列的数据类型。
步骤4:第二个for循环用来将当前列字段注入数据。
步骤5:通过利用已注入数据的a列来将其他列注入数据。
执行代码后查看表数据,如下:
三、总结
通过shell脚本代码,我们可以方便快捷的创建各种各样的数据形式,以使我们适应各种各样的测试场景,并且也能使我们方便的进行代码复用,当下次需要构造数据的时候可以随时修改并进行调用。不仅如此,对于一些常用的Linux操作场景,如复制、更改或批量处理数据文件时,我们也可以通过编写shell脚本来提高我们的操作效率。




