我有一些soapUI测试,它们使用groovy脚本首先将一些数据插入表中
以前,我一直使用以下代码片段来执行此操作:
def conn = context.dbConnEtopup
conn.execute( "INSERT INTO A(ID, NAME) VALUES (1, "Johnny")" )
这工作正常,但是我有许多测试脚本现在执行类似(如果不相同)的 SQL 语句,因此我尝试通过从属性文件加载它来解决此问题,因此我的实际 SQL 语句仅在一个放置,以便于编辑
然而,我尝试使用的 SQL 语句实际上是 2 次插入(或删除),因此加载的属性是:
DELETE * FROM TABLE_A; DELETE * FROM TABLE_B;
conn.execute()
无法处理;
,这意味着我只能使用第一个DELETE
陈述
我该如何解决这个问题?我不想单独加载每个属性并执行它们。理想情况下,我只想要一个属性,这样我就可以在将来添加更多删除语句
一些 JDBC 驱动程序支持多个语句,然后可以通过 Groovy 的 Sql 类使用此功能,例如使用 MySql:
def props = [user: 'myuser', password: 'mypassword', allowMultiQueries: 'true'] as Properties
def url = 'jdbc:mysql://127.0.0.1:3306/mydb'
def driver = 'com.mysql.jdbc.Driver'
def sql = Sql.newInstance(url, props, driver)
sql.execute """
insert into PERSON (id, firstname, lastname) values (1, 'Dierk', 'Koenig');
insert into PERSON (id, firstname, lastname) values (2, 'Guillaume', 'Laforge');
insert into PERSON (id, firstname, lastname) values (3, 'Jon', 'Skeet');
"""
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)