替换文件
This commit is contained in:
@@ -435,69 +435,69 @@ public class IMysqlLocalServiceImpl implements IMysqlLocalService {
|
||||
|
||||
if (matcher.find()) {
|
||||
|
||||
String tableName = matcher.group(1);
|
||||
String tableName = matcher.group(1);
|
||||
|
||||
List<List<String>> answerList= new ArrayList<>();
|
||||
List<List<String>> answerListStu = new ArrayList<>();
|
||||
try (Connection connanswer = DriverManager.getConnection(newDbUrl, user, password);
|
||||
Statement stmtan = connanswer.createStatement()) {
|
||||
try (ResultSet answer = stmtan.executeQuery(selectSql)) {
|
||||
answerList = getAnswerList(answer);
|
||||
List<List<String>> answerList= new ArrayList<>();
|
||||
List<List<String>> answerListStu = new ArrayList<>();
|
||||
try (Connection connanswer = DriverManager.getConnection(newDbUrl, user, password);
|
||||
Statement stmtan = connanswer.createStatement()) {
|
||||
try (ResultSet answer = stmtan.executeQuery(selectSql)) {
|
||||
answerList = getAnswerList(answer);
|
||||
// appendToFile(answerLogPath, "查找语句标准答案");
|
||||
// judgementStr = HtmlAppender.appendHtmlLine(judgementStr, "查找语句标准答案");
|
||||
// printResult(answerList,judgementStr);
|
||||
}catch (SQLException e) {
|
||||
}catch (SQLException e) {
|
||||
// appendToFile(answerLogPath, "答案表执行验证语句"+selectSql+"时发生错误: " + e.getMessage());
|
||||
// judgementStr = HtmlAppender.appendHtmlLine(judgementStr, "答案表执行验证语句"+selectSql+"时发生错误: " + e.getMessage());
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
String stuSql =null;
|
||||
try (Connection connstu = DriverManager.getConnection(stuDbUrl, user, password);
|
||||
Statement stmtstu = connstu.createStatement()) {
|
||||
try (ResultSet answer = stmtstu.executeQuery(selectSql)) {
|
||||
answerListStu = getAnswerList(answer);
|
||||
//还原 sql
|
||||
ResultSetMetaData meta = answer.getMetaData();
|
||||
List<String> columns = new ArrayList<>();
|
||||
for (int i = 1; i <= meta.getColumnCount(); i++) {
|
||||
columns.add(meta.getColumnLabel(i));
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
String stuSql =null;
|
||||
try (Connection connstu = DriverManager.getConnection(stuDbUrl, user, password);
|
||||
Statement stmtstu = connstu.createStatement()) {
|
||||
try (ResultSet answer = stmtstu.executeQuery(selectSql)) {
|
||||
answerListStu = getAnswerList(answer);
|
||||
//还原 sql
|
||||
ResultSetMetaData meta = answer.getMetaData();
|
||||
List<String> columns = new ArrayList<>();
|
||||
for (int i = 1; i <= meta.getColumnCount(); i++) {
|
||||
columns.add(meta.getColumnLabel(i));
|
||||
}
|
||||
|
||||
stuSql = restoreUpdateFromResult(sql, columns, answerListStu);
|
||||
stuSql = restoreUpdateFromResult(sql, columns, answerListStu);
|
||||
// appendToFile(answerLogPath, "还原学生 UPDATE 语句:" + stuSql);
|
||||
// judgementStr = HtmlAppender.appendHtmlLine(judgementStr, "还原学生 UPDATE 语句:" + stuSql);
|
||||
// appendToFile(answerLogPath, "学生语句答案:");
|
||||
// judgementStr = HtmlAppender.appendHtmlLine(judgementStr, "学生语句答案:");
|
||||
// printResult(answerListStu,judgementStr);
|
||||
} catch (SQLException e) {
|
||||
} catch (SQLException e) {
|
||||
// appendToFile(answerLogPath, "学生表执行验证语句"+selectSql+"时发生错误:" + e.getMessage());
|
||||
// judgementStr = HtmlAppender.appendHtmlLine(judgementStr, "学生表执行验证语句"+selectSql+"时发生错误: " + e.getMessage());
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
boolean isEquivalent =false;
|
||||
|
||||
if (answerListStu!=null&&answerListStu.size()>0){
|
||||
isEquivalent = compareResultsSelect(answerList, answerListStu);
|
||||
}
|
||||
//
|
||||
if (isEquivalent) {
|
||||
appendToFile(answerLogPath, "【执行】 "+"【"+selectSql+"】【验证】【表】【"+tableName+"】【✅】");
|
||||
judgementStr = HtmlAppender.appendHtmlLine(judgementStr, "【执行】 "+"【"+selectSql+"】【验证】【表】【"+tableName+"】【✅】");
|
||||
SourceAndText studentScorePojo = accumulateScoreAndLog(examMysqlKeywordList,total,answerLogPath,stuSql,totalKeyScore,score,answerId,scoreTotal,judgementStr);
|
||||
scoreTotal += studentScorePojo.getScore();
|
||||
judgementStr = studentScorePojo.getText();
|
||||
|
||||
}
|
||||
boolean isEquivalent =false;
|
||||
} else {
|
||||
appendToFile(answerLogPath, "【执行】 "+"【"+selectSql+"】【验证】【表】【"+tableName+"】【❌】");
|
||||
judgementStr = HtmlAppender.appendHtmlLine(judgementStr, "【执行】 "+"【"+selectSql+"】【验证】【表】【"+tableName+"】【❌】");
|
||||
SourceAndText studentScorePojo= calculateTotalScoreRate(stuSql, examMysqlKeywordList,totalKeyScore,score,answerId,scoreTotal,judgementStr);
|
||||
scoreTotal += studentScorePojo.getScore();
|
||||
judgementStr = studentScorePojo.getText();
|
||||
|
||||
if (answerListStu!=null&&answerListStu.size()>0){
|
||||
isEquivalent = compareResultsSelect(answerList, answerListStu);
|
||||
}
|
||||
//
|
||||
if (isEquivalent) {
|
||||
appendToFile(answerLogPath, "【执行】 "+"【"+selectSql+"】【验证】【表】【"+tableName+"】【✅】");
|
||||
judgementStr = HtmlAppender.appendHtmlLine(judgementStr, "【执行】 "+"【"+selectSql+"】【验证】【表】【"+tableName+"】【✅】");
|
||||
SourceAndText studentScorePojo = accumulateScoreAndLog(examMysqlKeywordList,total,answerLogPath,stuSql,totalKeyScore,score,answerId,scoreTotal,judgementStr);
|
||||
scoreTotal += studentScorePojo.getScore();
|
||||
judgementStr = studentScorePojo.getText();
|
||||
|
||||
} else {
|
||||
appendToFile(answerLogPath, "【执行】 "+"【"+selectSql+"】【验证】【表】【"+tableName+"】【❌】");
|
||||
judgementStr = HtmlAppender.appendHtmlLine(judgementStr, "【执行】 "+"【"+selectSql+"】【验证】【表】【"+tableName+"】【❌】");
|
||||
SourceAndText studentScorePojo= calculateTotalScoreRate(stuSql, examMysqlKeywordList,totalKeyScore,score,answerId,scoreTotal,judgementStr);
|
||||
scoreTotal += studentScorePojo.getScore();
|
||||
judgementStr = studentScorePojo.getText();
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
if (sql.trim().toUpperCase().startsWith("SELECT")) {
|
||||
@@ -1026,22 +1026,22 @@ public class IMysqlLocalServiceImpl implements IMysqlLocalService {
|
||||
} else {
|
||||
|
||||
|
||||
if (answerListStu.size() >= 2) {
|
||||
List<String> fieldMeta = answerListStu.get(0);
|
||||
List<String> fieldValue = answerListStu.get(1);
|
||||
if (answerListStu.size() >= 2) {
|
||||
List<String> fieldMeta = answerListStu.get(0);
|
||||
List<String> fieldValue = answerListStu.get(1);
|
||||
|
||||
Map<String, String> columnInfo = new HashMap<>();
|
||||
for (int i = 0; i < fieldMeta.size() && i < fieldValue.size(); i++) {
|
||||
columnInfo.put(fieldMeta.get(i), fieldValue.get(i));
|
||||
}
|
||||
|
||||
String alterSQL = buildAlterFromShowColumn(tableName, columnInfo);
|
||||
appendToFile(answerLogPath, "【执行】 "+"【"+selectSql+"】 【验证】 【表】 【"+tableName+"】【❌】");
|
||||
SourceAndText studentScorePojo = calculateTotalScoreRate(alterSQL, examMysqlKeywordList, totalKeyScore, score, answerId, scoreTotal, judgementStr);
|
||||
scoreTotal += studentScorePojo.getScore();
|
||||
judgementStr = studentScorePojo.getText();
|
||||
Map<String, String> columnInfo = new HashMap<>();
|
||||
for (int i = 0; i < fieldMeta.size() && i < fieldValue.size(); i++) {
|
||||
columnInfo.put(fieldMeta.get(i), fieldValue.get(i));
|
||||
}
|
||||
|
||||
String alterSQL = buildAlterFromShowColumn(tableName, columnInfo);
|
||||
appendToFile(answerLogPath, "【执行】 "+"【"+selectSql+"】 【验证】 【表】 【"+tableName+"】【❌】");
|
||||
SourceAndText studentScorePojo = calculateTotalScoreRate(alterSQL, examMysqlKeywordList, totalKeyScore, score, answerId, scoreTotal, judgementStr);
|
||||
scoreTotal += studentScorePojo.getScore();
|
||||
judgementStr = studentScorePojo.getText();
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user