Project SkyFire Core
SkyFire 5.4.8 server core API documentation
Loading...
Searching...
No Matches
AdhocStatement.cpp
Go to the documentation of this file.
1/*
2* This file is part of Project SkyFire https://www.projectskyfire.org.
3* See LICENSE.md file for Copyright information
4*/
5
6#include "AdhocStatement.h"
7#include "MySQLConnection.h"
8
11 m_has_result(false)
12{
13 m_sql = strdup(sql);
14}
15
17 m_has_result(true),
18 m_result(result)
19{
20 m_sql = strdup(sql);
21}
22
27
29{
30 if (m_has_result)
31 {
32 ResultSet* result = m_conn->Query(m_sql);
33 if (!result || !result->GetRowCount())
34 {
35 delete result;
36 m_result.set(QueryResult(NULL));
37 return false;
38 }
39 result->NextRow();
40 m_result.set(QueryResult(result));
41 return true;
42 }
43
44 return m_conn->Execute(m_sql);
45}
Skyfire::Future< QueryResult > QueryResultFuture
Skyfire::AutoPtr< ResultSet, Skyfire::Mutex > QueryResult
Definition QueryResult.h:48
BasicStatementTask(const char *sql)
QueryResultFuture m_result
uint64 GetRowCount() const
Definition QueryResult.h:25
bool NextRow()
MySQLConnection * m_conn