src.core.io.mariadb module

This file contains code, which either - builds a connection to a mariadb server or - or executes sql queries on a mariadb server

src.core.io.mariadb.buildConnection(customConf=None)[source]

builds a connection to mariadb server

Uses connection parameters to build a connection and a cursor(interface with server) to a database host

Returns:

  • conn (connection) – Handles the connection to a MariaDB or MySQL database server. It encapsulates a database session.

  • cur (cursor) – Executes SQL statements and procedures, and manages fetching results.

Parameters:

customConf (dict | None)

Return type:

tuple

src.core.io.mariadb.databaseSetup()[source]

Setups the connected database with the correct datatypes

Return type:

None

src.core.io.mariadb.executeQuery(query, conn, cur)[source]

executes a list of queries.

This method takes a conn, cur from a established mariadb connection and executes a list of passed queries.

Parameters:
  • query (str) – a sql query

  • conn (connection) – connection to a mariadb server instance

  • cur (cursor) – cursor of a mariadb server instance

src.core.io.mariadb.executeSQLFile(pathToFile)[source]

executes a .sql file. if only one file is given and the last command is a SELECT, it also outputs a dict

Parameters:
  • PathToFile (str) – the relative path to a .sql file

  • pathToFile (str)

Return type:

None

src.core.io.mariadb.getCreationQueries()[source]
src.core.io.mariadb.getCursorSelect(cur)[source]

returns the content of the cursor, after a done SELECT query.

Parameters:

cur – the cursor of the described mariadb connection after a SELECT

Returns:

parsed_rows – the parsed rows in a raw data format

Return type:

list[dict]

src.core.io.mariadb.updateConnectionState(customConf=None)[source]

updates the the connection status of lsas and writes it into the config files.

Returns:

connection_status – either a ‘1’ for connected or a ‘0’ for disconnected

Return type:

str

Parameters:

customConf (dict | None)

Dependency Diagrams (without externals):

digraph imports {
  rankdir=LR;
  node [shape=box];
  "src.core.io.wrapper" -> "src.core.io.mariadb";
  "src.core.macros" -> "src.core.io.mariadb";
  "src.core.macros" -> "src.core.process.writing";
  "src.core.process.writing" -> "src.core.io.mariadb";
  "src.main" -> "src.core.io.mariadb";
  "src.main" -> "src.core.macros";
  "src.visuals.windows.main_window" -> "src.core.io.mariadb";
  "src.visuals.windows.main_window" -> "src.core.io.wrapper";
  "src.visuals.windows.main_window" -> "src.core.macros";
  "src.visuals.windows.main_window" -> "src.visuals.windows.maria_dialog";
  "src.visuals.windows.main_window" -> "src.visuals.windows.sample_dialog";
  "src.visuals.windows.main_window" -> "src.visuals.windows.settings";
  "src.visuals.windows.maria_dialog" -> "src.core.io.mariadb";
  "src.visuals.windows.profile_dialog" -> "src.core.io.mariadb";
  "src.visuals.windows.sample_dialog" -> "src.core.io.mariadb";
  "src.visuals.windows.settings" -> "src.core.io.mariadb";
  "src.visuals.windows.settings" -> "src.visuals.windows.profile_dialog";
}

Import dependencies (collapsed)

Dependency Diagrams:

digraph imports {
  rankdir=LR;
  node [shape=box];
  "src.core.io.wrapper" -> "src.core.io.mariadb";
  "src.core.macros" -> "src.core.io.mariadb";
  "src.core.macros" -> "src.core.process.writing";
  "src.core.process.writing" -> "src.core.io.mariadb";
  "src.main" -> "src.core.io.mariadb";
  "src.main" -> "src.core.macros";
  "src.visuals.windows.main_window" -> "src.core.io.mariadb";
  "src.visuals.windows.main_window" -> "src.core.io.wrapper";
  "src.visuals.windows.main_window" -> "src.core.macros";
  "src.visuals.windows.main_window" -> "src.visuals.windows.maria_dialog";
  "src.visuals.windows.main_window" -> "src.visuals.windows.sample_dialog";
  "src.visuals.windows.main_window" -> "src.visuals.windows.settings";
  "src.visuals.windows.maria_dialog" -> "src.core.io.mariadb";
  "src.visuals.windows.profile_dialog" -> "src.core.io.mariadb";
  "src.visuals.windows.sample_dialog" -> "src.core.io.mariadb";
  "src.visuals.windows.settings" -> "src.core.io.mariadb";
  "src.visuals.windows.settings" -> "src.visuals.windows.profile_dialog";
}

Import dependencies (collapsed)