crawlserv++  [under development]
Application for crawling and analyzing textual content of websites.
Database.hpp File Reference
#include "../../Helper/Portability/mysqlcppconn.h"
#include "../../Main/Exception.hpp"
#include "../../Struct/DataEntry.hpp"
#include "../../Struct/StatusSetter.hpp"
#include "../../Struct/TableColumn.hpp"
#include "../../Struct/TargetTableProperties.hpp"
#include "../../Wrapper/Database.hpp"
#include "Config.hpp"
#include <cppconn/exception.h>
#include <cppconn/prepared_statement.h>
#include <cppconn/resultset.h>
#include <cppconn/statement.h>
#include <mysql_connection.h>
#include <algorithm>
#include <chrono>
#include <cstddef>
#include <cstdint>
#include <memory>
#include <queue>
#include <sstream>
#include <string>
#include <string_view>
#include <utility>
#include <vector>
Include dependency graph for Database.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  crawlservpp::Module::Parser::Database
 Class providing database functionality for parser threads by implementing Wrapper::Database. More...
 
class  crawlservpp::Module::Parser::Database::Exception
 Class for parser database exceptions. More...
 

Namespaces

 crawlservpp::Module::Parser
 Namespace for parser classes.
 

Constants

constexpr auto crawlservpp::Module::Parser::maxContentSize {1073741824}
 Maximum size of database content (= 1 GiB). More...
 
constexpr auto crawlservpp::Module::Parser::maxContentSizeString {"1 GiB"sv}
 Maximum size of database content as string. More...
 

Constants for MySQL Queries

constexpr auto crawlservpp::Module::Parser::oneAtOnce {1}
 Process one value at once. More...
 
constexpr auto crawlservpp::Module::Parser::nAtOnce10 {10}
 Process ten values at once. More...
 
constexpr auto crawlservpp::Module::Parser::nAtOnce100 {100}
 Process one hundred values at once. More...
 
constexpr auto crawlservpp::Module::Parser::sqlArg1 {1}
 First argument in a SQL query. More...
 
constexpr auto crawlservpp::Module::Parser::sqlArg2 {2}
 Second argument in a SQL query. More...
 
constexpr auto crawlservpp::Module::Parser::sqlArg3 {3}
 Third argument in a SQL query. More...
 
constexpr auto crawlservpp::Module::Parser::sqlArg4 {4}
 Fourth argument in a SQL query. More...
 
constexpr auto crawlservpp::Module::Parser::sqlArg5 {5}
 Fifth argument in a SQL query. More...
 
constexpr auto crawlservpp::Module::Parser::sqlArg6 {6}
 Sixth argument in a SQL query. More...
 
constexpr auto crawlservpp::Module::Parser::parsingTableAlias {"a"sv}
 Alias, used in SQL queries, for the parsing table. More...
 
constexpr auto crawlservpp::Module::Parser::targetTableAlias {"b"sv}
 Alias, used in SQL queries, for the target table. More...
 
constexpr auto crawlservpp::Module::Parser::minTargetColumns {4}
 Minimum number of columns in the target table. More...
 
constexpr auto crawlservpp::Module::Parser::numArgsLockUrl {3}
 Number of arguments for locking one URL. More...
 
constexpr auto crawlservpp::Module::Parser::minArsgAddUpdateData {5}
 Minimum number of arguments to add or update a data entry. More...
 
constexpr auto crawlservpp::Module::Parser::numArgsFinishUrl {2}
 Number of arguments for setting one URL to finished. More...
 
constexpr auto crawlservpp::Module::Parser::maxDateTimeValue {"9999-12-31 23:59:59"sv}
 The maximum value of a DATETIME in the database. More...