StormByte-Database 2.0.0
C++26 database module of the StormByte suite
 
Loading...
Searching...
No Matches
StormByte::Database::MariaDB::PreparedSTMT Class Referencefinal

MariaDB prepared statement. More...

#include <StormByte/database/mariadb/prepared_stmt.hxx>

Inheritance diagram for StormByte::Database::MariaDB::PreparedSTMT:
Collaboration diagram for StormByte::Database::MariaDB::PreparedSTMT:

Public Member Functions

 PreparedSTMT (const PreparedSTMT &other)=delete
 Copy constructor (deleted).
 
 PreparedSTMT (PreparedSTMT &&other) noexcept
 Move constructor.
 
 ~PreparedSTMT () noexcept override
 Destructor.
 
PreparedSTMT & operator= (const PreparedSTMT &other)=delete
 Copy assignment (deleted).
 
PreparedSTMT & operator= (PreparedSTMT &&other) noexcept
 Move assignment.
 
 PreparedSTMT (ConstructionKey key, std::string_view name, std::string_view query, struct st_mysql *conn, const StormByte::Shared< Logger::Log > &logger, const StormByte::Shared< StormByte::Database::Telemetry > &telemetry)
 Construct a MariaDB statement through its backend factory.
 
- Public Member Functions inherited from StormByte::Database::PreparedSTMT
 PreparedSTMT (std::string_view name, std::string_view query, const StormByte::Shared< Logger::Log > &logger)
 Copy name, query and logger.
 
 PreparedSTMT (std::string_view name, std::string_view query, const StormByte::Shared< Logger::Log > &logger, const StormByte::Shared< Telemetry > &telemetry)
 Copy statement metadata and share connection telemetry.
 
 PreparedSTMT (const PreparedSTMT &other)=delete
 Copy constructor (deleted).
 
 PreparedSTMT (PreparedSTMT &&other) noexcept
 Move constructor.
 
PreparedSTMT & operator= (const PreparedSTMT &other)=delete
 Copy assignment (deleted).
 
PreparedSTMT & operator= (PreparedSTMT &&other) noexcept
 Move assignment.
 
template<typename... Args>
ExpectedRows Execute (Args &&...args)
 Bind arguments and execute.
 
std::string_view Name () const noexcept
 Statement name.
 
std::string_view Query () const noexcept
 SQL text.
 

Friends

class ::StormByte::Database::MariaDB::MariaDB
 

Additional Inherited Members

- Protected Member Functions inherited from StormByte::Database::PreparedSTMT
void RecordBackendEvent (BackendEvent event) noexcept
 Record a backend event against the owning connection.
 
template<typename T >
void Bind (StormByte::Size index, T &&value) noexcept
 Bind a value at index.
 
void Bind (StormByte::Size index, std::nullptr_t) noexcept
 Bind SQL NULL at index.
 
- Protected Attributes inherited from StormByte::Database::PreparedSTMT
StormByte::Shared< Logger::Log > m_logger
 Shared logger, safe across the DLL boundary.
 
StormByte::Shared< Telemetry > m_telemetry
 Shared connection telemetry.
 

Detailed Description

MariaDB prepared statement.

Constructor & Destructor Documentation

◆ PreparedSTMT() [1/3]

StormByte::Database::MariaDB::PreparedSTMT::PreparedSTMT ( const PreparedSTMT &  other)
delete

Copy constructor (deleted).

◆ PreparedSTMT() [2/3]

StormByte::Database::MariaDB::PreparedSTMT::PreparedSTMT ( PreparedSTMT &&  other)
noexcept

Move constructor.

◆ ~PreparedSTMT()

StormByte::Database::MariaDB::PreparedSTMT::~PreparedSTMT ( )
overridevirtualnoexcept

Destructor.

Reimplemented from StormByte::Database::PreparedSTMT.

◆ PreparedSTMT() [3/3]

StormByte::Database::MariaDB::PreparedSTMT::PreparedSTMT ( ConstructionKey  key,
std::string_view  name,
std::string_view  query,
struct st_mysql *  conn,
const StormByte::Shared< Logger::Log > &  logger,
const StormByte::Shared< StormByte::Database::Telemetry > &  telemetry 
)

Construct a MariaDB statement through its backend factory.

Parameters
keyInternal construction key.
nameStatement name.
querySQL text.
connConnection handle.
loggerNon-owning logger observer.

Member Function Documentation

◆ operator=() [1/2]

PreparedSTMT & StormByte::Database::MariaDB::PreparedSTMT::operator= ( const PreparedSTMT &  other)
delete

Copy assignment (deleted).

◆ operator=() [2/2]

PreparedSTMT & StormByte::Database::MariaDB::PreparedSTMT::operator= ( PreparedSTMT &&  other)
noexcept

Move assignment.

Friends And Related Symbol Documentation

◆ ::StormByte::Database::MariaDB::MariaDB


The documentation for this class was generated from the following file: