aboutsummaryrefslogtreecommitdiff
path: root/src/server/game/Reputation/ReputationMgr.cpp
diff options
context:
space:
mode:
authorleak <leak@bitmx.net>2012-03-25 16:22:24 +0200
committerleak <leak@bitmx.net>2012-03-25 16:25:06 +0200
commitc6cbe4c77c5fcd4d296f31d471b4806ebe3d099d (patch)
treee36e04784374d754c85a06fec5a1e259593fccbb /src/server/game/Reputation/ReputationMgr.cpp
parent56fac5e1afc0596c32dc349d5bc0218fd8a0b13d (diff)
Core/DBLayer: Convert PAppend() queries to prepared statements No.1
Diffstat (limited to 'src/server/game/Reputation/ReputationMgr.cpp')
-rwxr-xr-xsrc/server/game/Reputation/ReputationMgr.cpp14
1 files changed, 12 insertions, 2 deletions
diff --git a/src/server/game/Reputation/ReputationMgr.cpp b/src/server/game/Reputation/ReputationMgr.cpp
index 2a50f6e3c85..a9a02170e5f 100755
--- a/src/server/game/Reputation/ReputationMgr.cpp
+++ b/src/server/game/Reputation/ReputationMgr.cpp
@@ -568,8 +568,18 @@ void ReputationMgr::SaveToDB(SQLTransaction& trans)
{
if (itr->second.needSave)
{
- trans->PAppend("DELETE FROM character_reputation WHERE guid = '%u' AND faction='%u'", _player->GetGUIDLow(), itr->second.ID);
- trans->PAppend("INSERT INTO character_reputation (guid, faction, standing, flags) VALUES ('%u', '%u', '%i', '%u')", _player->GetGUIDLow(), itr->second.ID, itr->second.Standing, itr->second.Flags);
+ PreparedStatement* stmt = CharacterDatabase.GetPreparedStatement(CHAR_DEL_CHAR_REPUTATION_BY_FACTION);
+ stmt->setUInt32(0, _player->GetGUIDLow());
+ stmt->setUInt16(1, uint16(itr->second.ID));
+ trans->Append(stmt);
+
+ stmt = CharacterDatabase.GetPreparedStatement(CHAR_INS_CHAR_REPUTATION_BY_FACTION);
+ stmt->setUInt32(0, _player->GetGUIDLow());
+ stmt->setUInt16(1, uint16(itr->second.ID));
+ stmt->setInt32(2, itr->second.Standing);
+ stmt->setUInt16(3, uint16(itr->second.Flags));
+ trans->Append(stmt);
+
itr->second.needSave = false;
}
}