使用ScriptRunner“ runScript”方法时,如果一次插入失败,则回滚

Connection con = null;
    try {
        con = datasource.getconnection();

        ScriptRunner sr = new ScriptRunner(con);
        Reader reader = new BufferedReader(new FileReader("filePath");
        sr.runScript(reader);

    } catch (FileNotFoundException e) {
        e.printStackTrace();
    } finally {
        if (con!=null) try {con.close();}catch (Exception ignore) {}
    }

上面是我用来执行SQL脚本文件的代码段。

如果脚本中有多个插入,我想在一个事务中执行所有插入,如果失败,则不应该将任何内容写入数据库。

我想通过代码而不是脚本来处理。

chendodo2009 回答:使用ScriptRunner“ runScript”方法时,如果一次插入失败,则回滚

通过将“ StopOnError”参数设置为true来实现。

        ScriptRunner sr = new ScriptRunner(con);
        sr.setStopOnError(true);
本文链接:https://www.f2er.com/2773022.html

大家都在问