java.lang.Object
org.evomaster.client.java.controller.api.dto.database.execution.SqlExecutionsDto

public class SqlExecutionsDto extends Object
Each time a SQL command is executed, we keep track of which tables and columns are involved. All the following Maps are in the form: from Table Name (key) to Column Name sets (value). The value "*" means all columns in the table. Note: we keep track of what the SUT tried to execute on the database, but not the result, eg, a DELETE might have deleted nothing if its WHERE clause was not satisfied.
  • Field Details

    • queriedData

      public Map<String,Set<String>> queriedData
      What was tried to be retrieved in a SELECT. Something like "select x from Foo" would give info on "Foo->{x}". However, at times, what is returned is not directly the content of a column, but rather some computations on it. For example, in "select avg(x) from Foo", we would still be just interested in the info that the data in "Foo->{x}" was used to compute the result. Note: this does NOT include what was used in the WHERE clauses. For example, "select a,b from Foo where c>0" would give info just for "Foo->{a,b}"
    • updatedData

      public Map<String,Set<String>> updatedData
      What tables/columns were tried to be updated in UPDATE
    • insertedData

      public Map<String,Set<String>> insertedData
      What tables/columns were tried to be newly created with INSERT
    • deletedData

      public Set<String> deletedData
      Names of tables on which DELETE was applied
    • failedWhere

      public Map<String,Set<String>> failedWhere
      Every time there is a WHERE clause which "failed" (ie, resulted in false), we keep track of which tables/columns where involved in determining the result of the WHERE. If there is no WHERE, but still no data was returned, we consider it as a failed WHERE The key is the table name and the value is the set of columns involved in the WHERE
    • numberOfSqlCommands

      public int numberOfSqlCommands
      The total Number of SQL commands (e.g., SELECT and UPDATE) executed
    • sqlParseFailureCount

      public int sqlParseFailureCount
      The number of SQL command that could not be parsed
    • sqlExecutionLogDtoList

      public List<SqlExecutionLogDto> sqlExecutionLogDtoList
      log of a list of sql commands that were executed
  • Constructor Details

    • SqlExecutionsDto

      public SqlExecutionsDto()