CSQLWrapper - C++ wrapper pro mySQL

Petr Wiedemann, 8. březen 2009

CSQLWrapper je třída pro zjednodušení práce s mySQL. Volá funkce z libmysql. Pracuje nad jedním spojením se serverem, takže lze s tímto spojením pracovat jako s objektem.

Příklad použití:

CSQLWrapper *pSQLWrapper = new CSQLWrapper;
MYSQL *pmysql = pSQLWrapper->MakeRealConnect("server", "username", "password");
// spojeni OK
if (pmysql)
{
  // vyber pracovni databaze
  if (pSQLWrapper->SelectDatabase("database"))
  {
    // spusteni dotazu
    if (pSQLWrapper->Query("select column from table;"))
    {
      MYSQL_ROW row;
      pSQLWrapper->StoreResult();

      // projde vsechny vracene radky a sloupce
      while (row = pSQLWrapper->FetchRow())
      {
        for (int i = 0; i < pSQLWrapper->GetNumFields(); i++)
        {
          cout << row[i] << endl;
        }
      }
      pSQLWrapper->FreeResult();
    }
    else
      cout << pSQLWrapper->GetLastErrorString() << endl;

    // ukonceni spojeni
    pSQLWrapper->CloseConnection();
  }
  // chyba pri vyberu databaze
  else
    cout << pSQLWrapper->GetLastErrorString() << endl;
}
// chyba pri otevirani spojeni
else
  cout << pSQLWrapper->GetLastErrorString() << endl;

delete pSQLWrapper;

K dispozici je verze pro MFC, která používá třídu CString a verze využívající std::string. Pro Windows bude pravděpodobně třeba vložit do souboru stdafx.h #include <winsock.h>

std namespace verze

MFC verze