Mysql
 sql >> Database >  >> RDS >> Mysql

Come impostare l'opzione di connessione automatica con il connettore mysql c++

Non sono un utente di questa libreria, quindi la mia conoscenza vale solo per gli ultimi 10 minuti, quindi per favore verifica.

Come regola generale, la migliore risorsa di tali informazioni sull'utilizzo di vari dettagli specifici di una libreria è quella di dare un'occhiata ai suoi unit test. La cosa migliore di OSS.

Quindi, se guardi gli unit test di MySQL Connector/C++ che possono essere trovati sul loro albero dei sorgenti, vedrai l'estratto seguente.

sql::ConnectOptionsMap connection_properties;

...

connection_properties["OPT_RECONNECT"]=true;
try
{
    con.reset(driver->connect(connection_properties));
}
catch (sql::SQLException &e)
{
    std::cerr << e.what();
}

Per ulteriori informazioni, si prega di fare quanto segue, in modo da poter dare un'occhiata da soli.

~/tmp$ bzr branch lp:~mysql/mysql-connector-cpp/trunk mysql-connector-cpp
~/tmp$ vi mysql-connector-cpp/test/unit/classes/connection.cpp +170
~/tmp$ vi mysql-connector-cpp/test/unit/classes/connection.h 

Detto questo, l'opzione di riconnessione in mysql deve essere utilizzata con molta attenzione, poiché dovrai ripristinare tutte le variabili di sessione, ecc. Dovrai trattare una connessione riconnessa come una connessione nuova di zecca. Questo deve essere verificato con la documentazione della particolare versione di MySQL con cui stai lavorando.