Package net.bugreaper.modules.db
Class MySQL
MySQL helper that provides a common API for operating with MySQL.
It is recommended to use a single instance:
MySQL db = MySQL.getInstance();
Provides:
- Assertions with await support
- Data manipulation operations such as create, update, and clean
For more information, see JdbcExecutor.
-
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected voidassertCountInTableBuilder(String tableName, String conditions, Object[][] conditionsArray, String expectedCount, int awaitMs) static MySQLprotected String[]getTableColumns(String tableName) Returns the list of columns in the table.protected voidrecordExistsBuilder(String tableName, String conditions, Object[][] conditionsArray, int awaitMs) protected voidseeInDbByCondMethod(String tableName, String conditions) protected voidshowDataFromTableMethod(String tableName) Methods inherited from class net.bugreaper.modules.db.jdbc.JdbcExecutor
deleteFromTable, deleteFromTable, deleteFromTable, getConfigSummary, insertIntoTable, insertIntoTable, insertIntoTable, renameTable, rollbackTable, runScript, runScriptFromFile, seeRecordExistsInTable, seeRecordExistsInTable, seeRecordExistsInTableCustom, seeRowsCountInTableExactly, seeRowsCountInTableExactly, seeRowsCountInTableExactly, seeRowsCountInTableExactlyCustom, seeTableIsEmpty, seeTableIsNotEmpty, self, setAwaitMs, setTemplatesDirectory, showDataByCondition, showDataFromTable, truncateTable, truncateTables, updateTable, updateTable, updateTable, withAwaitMs
-
Field Details
-
jdbc
-
getColumnsQuery
-
url
-
username
-
password
-
SELECT_ALL
- See Also:
-
COUNT
- See Also:
-
-
Constructor Details
-
MySQL
Creates a new MySQL database helper instance with the specified connection parameters.- Parameters:
dbUrl- the JDBC connection URL for the MySQL databaseusername- the username used to authenticate with the databasepasswd- the password used to authenticate with the database- Throws:
IllegalArgumentException- if any of the required parameters are null or empty
-
MySQL
public MySQL()Constructs MySQL client configuration.Loads configuration values from a YAML file.
Example:MySQL db = new MySQL();mysql: url: 'jdbc:mysql://localhost:3308' username: user password: pass await: 1000 (optional)
- See Also:
-
-
Method Details
-
getInstance
Returns the singleton instance ofMySQLwith config builderMySQL().This implementation is thread-safe using method-level synchronization.
- Returns:
- the singleton instance of
MySQL - Throws:
IllegalArgumentException- if the configuration contains invalid values- See Also:
-
assertCountInTableBuilder
-
recordExistsBuilder
-
showDataFromTableMethod
-
seeInDbByCondMethod
-
getTableColumns
Returns the list of columns in the table.- Parameters:
tableName- table name in the formatschema_name.table_name- Returns:
- array containing column names
-