1
Fork 0
mirror of https://github.com/SapphireServer/Sapphire.git synced 2025-07-13 15:47:45 +00:00

Just DB refactoring

This commit is contained in:
Mordred 2017-09-09 15:27:17 +02:00
parent b9e3f3a0e7
commit e65902e20f

View file

@ -62,7 +62,7 @@ uint32_t QueryResult::getRowCount() const
return m_rowCount; return m_rowCount;
} }
Database::Database() Database::Database()
{ {
m_port = 0; m_port = 0;
m_counter = 0; m_counter = 0;
@ -150,9 +150,8 @@ DatabaseConnection * Database::getFreeConnection()
} }
} }
boost::shared_ptr<QueryResult> Database::query( const std::string& QueryString ) boost::shared_ptr< QueryResult > Database::query( const std::string& QueryString )
{ {
// Send the query // Send the query
boost::shared_ptr< QueryResult > qResult( nullptr ); boost::shared_ptr< QueryResult > qResult( nullptr );
DatabaseConnection * con = getFreeConnection(); DatabaseConnection * con = getFreeConnection();
@ -188,7 +187,7 @@ std::string Database::escapeString( std::string Escape )
ret = Escape.c_str(); ret = Escape.c_str();
else else
ret = a2; ret = a2;
con->lock.unlock(); con->lock.unlock();
return std::string( ret ); return std::string( ret );
} }
@ -257,10 +256,10 @@ bool Database::handleError( DatabaseConnection *con, uint32_t ErrorNumber )
QueryResult * Database::storeQueryResult( DatabaseConnection * con ) QueryResult * Database::storeQueryResult( DatabaseConnection * con )
{ {
QueryResult *res; QueryResult* res;
MYSQL_RES * pRes = mysql_store_result( con->conn ); MYSQL_RES* pRes = mysql_store_result( con->conn );
uint32_t uRows = ( uint32_t ) mysql_affected_rows( con->conn ); auto uRows = mysql_affected_rows( con->conn );
uint32_t uFields = ( uint32_t ) mysql_field_count( con->conn ); auto uFields = mysql_field_count( con->conn );
if( uRows == 0 || uFields == 0 || pRes == 0 ) if( uRows == 0 || uFields == 0 || pRes == 0 )
{ {
@ -270,7 +269,9 @@ QueryResult * Database::storeQueryResult( DatabaseConnection * con )
return nullptr; return nullptr;
} }
res = new QueryResult( pRes, uFields, uRows ); res = new QueryResult( pRes,
static_cast< uint32_t >( uFields ),
static_cast< uint32_t >( uRows ) );
res->nextRow(); res->nextRow();
return res; return res;
@ -293,15 +294,13 @@ bool Database::reconnect( DatabaseConnection * conn )
0 ); 0 );
if( temp2 == nullptr ) if( temp2 == nullptr )
{ {
g_log.error( "Database: Could not reconnect to database because of " + std::string( mysql_error( temp ) ) ); g_log.error( "Database: Could not reconnect to database -> " + std::string( mysql_error( temp ) ) );
mysql_close( temp ); mysql_close( temp );
return false; return false;
} }
if( conn->conn != nullptr ) if( conn->conn != nullptr )
{
mysql_close( conn->conn ); mysql_close( conn->conn );
}
conn->conn = temp; conn->conn = temp;
return true; return true;
@ -356,13 +355,9 @@ std::string Field::getString() const
void Field::getBinary( char *dstBuf, uint16_t size ) const void Field::getBinary( char *dstBuf, uint16_t size ) const
{ {
if( m_pValue ) if( m_pValue )
{
memcpy( dstBuf, m_pValue, size ); memcpy( dstBuf, m_pValue, size );
}
else else
{
dstBuf = nullptr; dstBuf = nullptr;
}
} }
float Field::getFloat() const float Field::getFloat() const