aboutsummaryrefslogtreecommitdiff
path: root/src/server/database/Database/QueryResult.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/server/database/Database/QueryResult.h')
-rw-r--r--src/server/database/Database/QueryResult.h39
1 files changed, 6 insertions, 33 deletions
diff --git a/src/server/database/Database/QueryResult.h b/src/server/database/Database/QueryResult.h
index 5d2cc425ae8..dcfe18765fc 100644
--- a/src/server/database/Database/QueryResult.h
+++ b/src/server/database/Database/QueryResult.h
@@ -19,14 +19,9 @@
#ifndef QUERYRESULT_H
#define QUERYRESULT_H
-#include <memory>
-#include "Errors.h"
-#include "Field.h"
-
-#ifdef _WIN32
- #include <winsock2.h>
-#endif
-#include <mysql.h>
+#include "Define.h"
+#include "DatabaseEnvFwd.h"
+#include <vector>
class TC_DATABASE_API ResultSet
{
@@ -39,11 +34,7 @@ class TC_DATABASE_API ResultSet
uint32 GetFieldCount() const { return _fieldCount; }
Field* Fetch() const { return _currentRow; }
- const Field & operator [] (uint32 index) const
- {
- ASSERT(index < _fieldCount);
- return _currentRow[index];
- }
+ Field const& operator[](std::size_t index) const;
protected:
uint64 _rowCount;
@@ -59,8 +50,6 @@ class TC_DATABASE_API ResultSet
ResultSet& operator=(ResultSet const& right) = delete;
};
-typedef std::shared_ptr<ResultSet> QueryResult;
-
class TC_DATABASE_API PreparedResultSet
{
public:
@@ -71,18 +60,8 @@ class TC_DATABASE_API PreparedResultSet
uint64 GetRowCount() const { return m_rowCount; }
uint32 GetFieldCount() const { return m_fieldCount; }
- Field* Fetch() const
- {
- ASSERT(m_rowPosition < m_rowCount);
- return const_cast<Field*>(&m_rows[uint32(m_rowPosition) * m_fieldCount]);
- }
-
- Field const& operator[](uint32 index) const
- {
- ASSERT(m_rowPosition < m_rowCount);
- ASSERT(index < m_fieldCount);
- return m_rows[uint32(m_rowPosition) * m_fieldCount + index];
- }
+ Field* Fetch() const;
+ Field const& operator[](std::size_t index) const;
protected:
std::vector<Field> m_rows;
@@ -95,9 +74,6 @@ class TC_DATABASE_API PreparedResultSet
MYSQL_STMT* m_stmt;
MYSQL_RES* m_metadataResult; ///< Field metadata, returned by mysql_stmt_result_metadata
- my_bool* m_isNull;
- unsigned long* m_length;
-
void CleanUp();
bool _NextRow();
@@ -105,7 +81,4 @@ class TC_DATABASE_API PreparedResultSet
PreparedResultSet& operator=(PreparedResultSet const& right) = delete;
};
-typedef std::shared_ptr<PreparedResultSet> PreparedQueryResult;
-
#endif
-