执行语句优化2
This commit is contained in:
parent
4bff204397
commit
f1320e3333
|
@ -14,22 +14,42 @@ public class TestDBFormPlugin extends AbstractFormPlugin {
|
||||||
@Override
|
@Override
|
||||||
public void afterDoOperation(AfterDoOperationEventArgs e) {
|
public void afterDoOperation(AfterDoOperationEventArgs e) {
|
||||||
super.afterDoOperation(e);
|
super.afterDoOperation(e);
|
||||||
if("qeug_btnok".equals(e.getOperateKey())){
|
if ("qeug_btnok".equals(e.getOperateKey())) {
|
||||||
String dbnum = (String) this.getModel().getValue("qeug_dbnum");//标识
|
String dbnum = (String) this.getModel().getValue("qeug_dbnum"); // 标识
|
||||||
//String sql = (String) this.getModel().getValue("qeug_sqls");//sql语句-多行文本
|
String sql2 = (String) this.getModel().getValue("qeug_largetextfield_tag"); // sql语句-大文本
|
||||||
String sql2 = (String) this.getModel().getValue("qeug_largetextfield");//sql语句-大文本
|
|
||||||
try{
|
// 检查SQL文本是否为空
|
||||||
//DB.update(DBRoute.of(dbnum), sql,null);
|
if (sql2 == null || sql2.trim().isEmpty()) {
|
||||||
String[] sqlss = sql2.split(";");//解决多个更新语句一起执行失败的问题
|
this.getView().showMessage("SQL语句不能为空");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
try {
|
||||||
|
String[] sqlss = sql2.split(";");
|
||||||
|
int successCount = 0;
|
||||||
|
|
||||||
for (String sql : sqlss) {
|
for (String sql : sqlss) {
|
||||||
DB.update(DBRoute.of(dbnum), sql,null);
|
// 跳过空语句
|
||||||
logger.info("执行语句:"+sql);
|
if (sql == null || sql.trim().isEmpty()) {
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
|
||||||
|
// 执行SQL语句
|
||||||
|
DB.update(DBRoute.of(dbnum), sql, null);
|
||||||
|
logger.info("执行语句:" + sql);
|
||||||
|
successCount++;
|
||||||
}
|
}
|
||||||
|
|
||||||
}catch(Exception ex){
|
if (successCount > 0) {
|
||||||
this.getView().showMessage("执行失败:" + ex.getMessage());
|
this.getView().showSuccessNotification("成功执行 " + successCount + " 条语句");
|
||||||
|
} else {
|
||||||
|
this.getView().showMessage("未执行任何有效SQL语句");
|
||||||
|
}
|
||||||
|
|
||||||
|
} catch (Exception ex) {
|
||||||
|
logger.error("SQL执行失败", ex);
|
||||||
|
this.getView().showMessage("执行失败: " + ex.getMessage());
|
||||||
}
|
}
|
||||||
this.getView().showSuccessNotification("执行成功");
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
Loading…
Reference in New Issue