PrepareStatement(CHAR_DEL_QUEST_POOL_SAVE,"DELETE FROM pool_quest_save WHERE pool_id = ?",CONNECTION_ASYNC);
PrepareStatement(CHAR_INS_QUEST_POOL_SAVE,"INSERT INTO pool_quest_save (pool_id, quest_id) VALUES (?, ?)",CONNECTION_ASYNC);
PrepareStatement(CHAR_DEL_NONEXISTENT_GUILD_BANK_ITEM,"DELETE FROM guild_bank_item WHERE guildid = ? AND TabId = ? AND SlotId = ?",CONNECTION_ASYNC);
PrepareStatement(CHAR_DEL_EXPIRED_BANS,"UPDATE character_banned SET active = 0 WHERE unbandate <= UNIX_TIMESTAMP() AND unbandate <> bandate",CONNECTION_ASYNC);
PrepareStatement(CHAR_SEL_GUID_BY_NAME,"SELECT guid FROM characters WHERE name = ?",CONNECTION_BOTH);
PrepareStatement(CHAR_SEL_CHECK_NAME,"SELECT 1 FROM characters WHERE name = ?",CONNECTION_BOTH);
PrepareStatement(CHAR_SEL_CHECK_GUID,"SELECT 1 FROM characters WHERE guid = ?",CONNECTION_SYNCH);
PrepareStatement(CHAR_SEL_SUM_CHARS,"SELECT COUNT(guid) FROM characters WHERE account = ?",CONNECTION_BOTH);
PrepareStatement(CHAR_SEL_CHAR_CREATE_INFO,"SELECT level, race, class FROM characters WHERE account = ? LIMIT 0, ?",CONNECTION_ASYNC);
PrepareStatement(CHAR_INS_CHARACTER_BAN,"INSERT INTO character_banned VALUES (?, UNIX_TIMESTAMP(), UNIX_TIMESTAMP()+?, ?, ?, 1)",CONNECTION_ASYNC);
PrepareStatement(CHAR_UPD_CHARACTER_BAN,"UPDATE character_banned SET active = 0 WHERE guid = ? AND active != 0",CONNECTION_ASYNC);
PrepareStatement(CHAR_DEL_CHARACTER_BAN,"DELETE cb FROM character_banned cb INNER JOIN characters c ON c.guid = cb.guid WHERE c.account = ?",CONNECTION_ASYNC);
PrepareStatement(CHAR_SEL_BANINFO,"SELECT bandate, unbandate-bandate, active, unbandate, banreason, bannedby FROM character_banned WHERE guid = ? ORDER BY bandate ASC",CONNECTION_SYNCH);
PrepareStatement(CHAR_SEL_GUID_BY_NAME_FILTER,"SELECT guid, name FROM characters WHERE name LIKE CONCAT('%%', ?, '%%')",CONNECTION_SYNCH);
PrepareStatement(CHAR_SEL_BANINFO_LIST,"SELECT bandate, unbandate, bannedby, banreason FROM character_banned WHERE guid = ? ORDER BY unbandate",CONNECTION_SYNCH);
PrepareStatement(CHAR_SEL_BANNED_NAME,"SELECT characters.name FROM characters, character_banned WHERE character_banned.guid = ? AND character_banned.guid = characters.guid",CONNECTION_SYNCH);
PrepareStatement(CHAR_SEL_MAIL_LIST_INFO,"SELECT id, sender, (SELECT name FROM characters WHERE guid = sender) AS sendername, receiver, (SELECT name FROM characters WHERE guid = receiver) AS receivername, "
"subject, deliver_time, expire_time, money, has_items FROM mail WHERE receiver = ? ",CONNECTION_SYNCH);
"cb.guid, c.slot, c.logout_time, c.activeTalentGroup, cd.genitive FROM characters AS c LEFT JOIN character_pet AS cp ON c.guid = cp.owner AND cp.slot = ? "
"FROM characters AS c LEFT JOIN character_pet AS cp ON c.guid = cp.owner AND cp.slot = ? LEFT JOIN guild_member AS gm ON c.guid = gm.guid "
"LEFT JOIN character_banned AS cb ON c.guid = cb.guid AND cb.active = 1 WHERE c.deleteInfos_Account = ? AND c.deleteInfos_Name IS NOT NULL",CONNECTION_ASYNC);
"cb.guid, c.slot, c.logout_time, c.activeTalentGroup, cd.genitive FROM characters AS c LEFT JOIN character_pet AS cp ON c.guid = cp.owner AND cp.slot = ? "
"LEFT JOIN character_declinedname AS cd ON c.guid = cd.guid LEFT JOIN guild_member AS gm ON c.guid = gm.guid "
"LEFT JOIN character_banned AS cb ON c.guid = cb.guid AND cb.active = 1 WHERE c.deleteInfos_Account = ? AND c.deleteInfos_Name IS NOT NULL",CONNECTION_ASYNC);
PrepareStatement(CHAR_SEL_FREE_NAME,"SELECT name, at_login FROM characters WHERE guid = ? AND NOT EXISTS (SELECT NULL FROM characters WHERE name = ?)",CONNECTION_ASYNC);
PrepareStatement(CHAR_SEL_CHARACTER_INSTANCE,"SELECT id, permanent, map, difficulty, extendState, resettime, entranceId FROM character_instance LEFT JOIN instance ON instance = id WHERE guid = ?",CONNECTION_ASYNC);
PrepareStatement(CHAR_SEL_CHARACTER_QUESTSTATUS,"SELECT quest, status, timer FROM character_queststatus WHERE guid = ? AND status <> 0",CONNECTION_ASYNC);
PrepareStatement(CHAR_SEL_CHARACTER_QUESTSTATUS_OBJECTIVES,"SELECT quest, objective, data FROM character_queststatus_objectives WHERE guid = ?",CONNECTION_ASYNC);
PrepareStatement(CHAR_SEL_CHARACTER_QUESTSTATUS_OBJECTIVES_CRITERIA,"SELECT questObjectiveId FROM character_queststatus_objectives_criteria WHERE guid = ?",CONNECTION_ASYNC);
PrepareStatement(CHAR_SEL_CHARACTER_QUESTSTATUS_OBJECTIVES_CRITERIA_PROGRESS,"SELECT criteriaId, counter, date FROM character_queststatus_objectives_criteria_progress WHERE guid = ?",CONNECTION_ASYNC);
PrepareStatement(CHAR_SEL_CHARACTER_QUESTSTATUS_DAILY,"SELECT quest, time FROM character_queststatus_daily WHERE guid = ?",CONNECTION_ASYNC);
PrepareStatement(CHAR_SEL_CHARACTER_QUESTSTATUS_WEEKLY,"SELECT quest FROM character_queststatus_weekly WHERE guid = ?",CONNECTION_ASYNC);
PrepareStatement(CHAR_SEL_CHARACTER_QUESTSTATUS_MONTHLY,"SELECT quest FROM character_queststatus_monthly WHERE guid = ?",CONNECTION_ASYNC);
PrepareStatement(CHAR_SEL_CHARACTER_QUESTSTATUS_SEASONAL,"SELECT quest, event FROM character_queststatus_seasonal WHERE guid = ?",CONNECTION_ASYNC);
PrepareStatement(CHAR_DEL_CHARACTER_QUESTSTATUS_DAILY,"DELETE FROM character_queststatus_daily WHERE guid = ?",CONNECTION_ASYNC);
PrepareStatement(CHAR_DEL_CHARACTER_QUESTSTATUS_WEEKLY,"DELETE FROM character_queststatus_weekly WHERE guid = ?",CONNECTION_ASYNC);
PrepareStatement(CHAR_DEL_CHARACTER_QUESTSTATUS_MONTHLY,"DELETE FROM character_queststatus_monthly WHERE guid = ?",CONNECTION_ASYNC);
PrepareStatement(CHAR_DEL_CHARACTER_QUESTSTATUS_SEASONAL,"DELETE FROM character_queststatus_seasonal WHERE guid = ?",CONNECTION_ASYNC);
PrepareStatement(CHAR_INS_CHARACTER_QUESTSTATUS_DAILY,"INSERT INTO character_queststatus_daily (guid, quest, time) VALUES (?, ?, ?)",CONNECTION_ASYNC);
PrepareStatement(CHAR_INS_CHARACTER_QUESTSTATUS_WEEKLY,"INSERT INTO character_queststatus_weekly (guid, quest) VALUES (?, ?)",CONNECTION_ASYNC);
PrepareStatement(CHAR_INS_CHARACTER_QUESTSTATUS_MONTHLY,"INSERT INTO character_queststatus_monthly (guid, quest) VALUES (?, ?)",CONNECTION_ASYNC);
PrepareStatement(CHAR_INS_CHARACTER_QUESTSTATUS_SEASONAL,"INSERT INTO character_queststatus_seasonal (guid, quest, event) VALUES (?, ?, ?)",CONNECTION_ASYNC);
PrepareStatement(CHAR_DEL_RESET_CHARACTER_QUESTSTATUS_DAILY,"DELETE FROM character_queststatus_daily",CONNECTION_ASYNC);
PrepareStatement(CHAR_DEL_RESET_CHARACTER_QUESTSTATUS_WEEKLY,"DELETE FROM character_queststatus_weekly",CONNECTION_ASYNC);
PrepareStatement(CHAR_DEL_RESET_CHARACTER_QUESTSTATUS_MONTHLY,"DELETE FROM character_queststatus_monthly",CONNECTION_ASYNC);
PrepareStatement(CHAR_DEL_RESET_CHARACTER_QUESTSTATUS_SEASONAL_BY_EVENT,"DELETE FROM character_queststatus_seasonal WHERE event = ?",CONNECTION_ASYNC);
PrepareStatement(CHAR_SEL_CHARACTER_INVENTORY,"SELECT "SelectItemInstanceContent", bag, slot FROM character_inventory ci JOIN item_instance ii ON ci.item = ii.guid LEFT JOIN item_instance_gems ig ON ii.guid = ig.itemGuid LEFT JOIN item_instance_transmog iit ON ii.guid = iit.itemGuid LEFT JOIN item_instance_modifiers im ON ii.guid = im.itemGuid WHERE ci.guid = ? ORDER BY (ii.flags & 0x80000) ASC, bag ASC, slot ASC",CONNECTION_ASYNC);
PrepareStatement(CHAR_SEL_CHARACTER_ACTIONS,"SELECT a.button, a.action, a.type FROM character_action as a, characters as c WHERE a.guid = c.guid AND a.spec = c.activeTalentGroup AND a.guid = ? ORDER BY button",CONNECTION_ASYNC);
PrepareStatement(CHAR_SEL_CHARACTER_MAILCOUNT,"SELECT COUNT(id) FROM mail WHERE receiver = ? AND (checked & 1) = 0 AND deliver_time <= ?",CONNECTION_ASYNC);
PrepareStatement(CHAR_SEL_CHARACTER_MAILDATE,"SELECT MIN(deliver_time) FROM mail WHERE receiver = ? AND (checked & 1) = 0",CONNECTION_ASYNC);
PrepareStatement(CHAR_SEL_MAIL_COUNT,"SELECT COUNT(*) FROM mail WHERE receiver = ?",CONNECTION_SYNCH);
PrepareStatement(CHAR_SEL_CHARACTER_SOCIALLIST,"SELECT cs.friend, c.account, cs.flags, cs.note FROM character_social cs JOIN characters c ON c.guid = cs.friend WHERE cs.guid = ? AND c.deleteinfos_name IS NULL LIMIT 255",CONNECTION_ASYNC);
PrepareStatement(CHAR_SEL_CHARACTER_SPELLCOOLDOWNS,"SELECT spell, item, time, categoryId, categoryEnd FROM character_spell_cooldown WHERE guid = ? AND time > UNIX_TIMESTAMP()",CONNECTION_ASYNC);
PrepareStatement(CHAR_SEL_CHARACTER_SPELL_CHARGES,"SELECT categoryId, rechargeStart, rechargeEnd FROM character_spell_charges WHERE guid = ? AND rechargeEnd > UNIX_TIMESTAMP() ORDER BY rechargeEnd",CONNECTION_ASYNC);
PrepareStatement(CHAR_SEL_CHARACTER_ACHIEVEMENTS,"SELECT achievement, date FROM character_achievement WHERE guid = ?",CONNECTION_ASYNC);
PrepareStatement(CHAR_SEL_CHARACTER_CRITERIAPROGRESS,"SELECT criteria, counter, date FROM character_achievement_progress WHERE guid = ?",CONNECTION_ASYNC);
"item9, item10, item11, item12, item13, item14, item15, item16, item17, item18 FROM character_equipmentsets WHERE guid = ? ORDER BY setindex",CONNECTION_ASYNC);
PrepareStatement(CHAR_SEL_ACCOUNT_INSTANCELOCKTIMES,"SELECT instanceId, releaseTime FROM account_instance_times WHERE accountId = ?",CONNECTION_ASYNC);
PrepareStatement(CHAR_SEL_CHARACTER_ACTIONS_SPEC,"SELECT button, action, type FROM character_action WHERE guid = ? AND spec = ? ORDER BY button",CONNECTION_SYNCH);
PrepareStatement(CHAR_SEL_MAILITEMS,"SELECT "SelectItemInstanceContent", ii.owner_guid FROM mail_items mi JOIN item_instance ii ON mi.item_guid = ii.guid LEFT JOIN item_instance_gems ig ON ii.guid = ig.itemGuid LEFT JOIN item_instance_transmog iit ON ii.guid = iit.itemGuid LEFT JOIN item_instance_modifiers im ON ii.guid = im.itemGuid WHERE mail_id = ?",CONNECTION_SYNCH);
PrepareStatement(CHAR_SEL_AUCTION_ITEMS,"SELECT "SelectItemInstanceContent" FROM auctionhouse ah JOIN item_instance ii ON ah.itemguid = ii.guid LEFT JOIN item_instance_gems ig ON ii.guid = ig.itemGuid LEFT JOIN item_instance_transmog iit ON ii.guid = iit.itemGuid LEFT JOIN item_instance_modifiers im ON ii.guid = im.itemGuid",CONNECTION_SYNCH);
PrepareStatement(CHAR_DEL_MAIL_BY_ID,"DELETE FROM mail WHERE id = ?",CONNECTION_ASYNC);
PrepareStatement(CHAR_INS_MAIL_ITEM,"INSERT INTO mail_items(mail_id, item_guid, receiver) VALUES (?, ?, ?)",CONNECTION_ASYNC);
PrepareStatement(CHAR_DEL_MAIL_ITEM,"DELETE FROM mail_items WHERE item_guid = ?",CONNECTION_ASYNC);
PrepareStatement(CHAR_DEL_INVALID_MAIL_ITEM,"DELETE FROM mail_items WHERE item_guid = ?",CONNECTION_ASYNC);
PrepareStatement(CHAR_DEL_EMPTY_EXPIRED_MAIL,"DELETE FROM mail WHERE expire_time < ? AND has_items = 0 AND body = ''",CONNECTION_ASYNC);
PrepareStatement(CHAR_SEL_EXPIRED_MAIL,"SELECT id, messageType, sender, receiver, has_items, expire_time, cod, checked, mailTemplateId FROM mail WHERE expire_time < ?",CONNECTION_SYNCH);
PrepareStatement(CHAR_SEL_EXPIRED_MAIL_ITEMS,"SELECT item_guid, itemEntry, mail_id FROM mail_items mi INNER JOIN item_instance ii ON ii.guid = mi.item_guid LEFT JOIN mail mm ON mi.mail_id = mm.id WHERE mm.id IS NOT NULL AND mm.expire_time < ?",CONNECTION_SYNCH);
PrepareStatement(CHAR_UPD_MAIL_RETURNED,"UPDATE mail SET sender = ?, receiver = ?, expire_time = ?, deliver_time = ?, cod = 0, checked = ? WHERE id = ?",CONNECTION_ASYNC);
PrepareStatement(CHAR_UPD_MAIL_ITEM_RECEIVER,"UPDATE mail_items SET receiver = ? WHERE item_guid = ?",CONNECTION_ASYNC);
PrepareStatement(CHAR_UPD_ITEM_OWNER,"UPDATE item_instance SET owner_guid = ? WHERE guid = ?",CONNECTION_ASYNC);
PrepareStatement(CHAR_SEL_ITEM_REFUNDS,"SELECT paidMoney, paidExtendedCost FROM item_refund_instance WHERE item_guid = ? AND player_guid = ? LIMIT 1",CONNECTION_SYNCH);
PrepareStatement(CHAR_DEL_ITEM_INSTANCE_GEMS,"DELETE FROM item_instance_gems WHERE itemGuid = ?",CONNECTION_ASYNC);
PrepareStatement(CHAR_DEL_ITEM_INSTANCE_GEMS_BY_OWNER,"DELETE iig FROM item_instance_gems iig LEFT JOIN item_instance ii ON iig.itemGuid = ii.guid WHERE ii.owner_guid = ?",CONNECTION_ASYNC);
PrepareStatement(CHAR_DEL_ITEM_INSTANCE_TRANSMOG,"DELETE FROM item_instance_transmog WHERE itemGuid = ?",CONNECTION_ASYNC);
PrepareStatement(CHAR_DEL_ITEM_INSTANCE_TRANSMOG_BY_OWNER,"DELETE iit FROM item_instance_transmog iit LEFT JOIN item_instance ii ON iit.itemGuid = ii.guid WHERE ii.owner_guid = ?",CONNECTION_ASYNC);
PrepareStatement(CHAR_SEL_ITEM_INSTANCE_ARTIFACT,"SELECT a.itemGuid, a.xp, a.artifactAppearanceId, ap.artifactPowerId, ap.purchasedRank FROM item_instance_artifact_powers ap LEFT JOIN item_instance_artifact a ON ap.itemGuid = a.itemGuid INNER JOIN character_inventory ci ON ci.item = ap.itemGuid WHERE ci.guid = ?",CONNECTION_ASYNC);
PrepareStatement(CHAR_INS_ITEM_INSTANCE_ARTIFACT,"INSERT INTO item_instance_artifact (itemGuid, xp, artifactAppearanceId) VALUES (?, ?, ?)",CONNECTION_ASYNC);
PrepareStatement(CHAR_DEL_ITEM_INSTANCE_ARTIFACT,"DELETE FROM item_instance_artifact WHERE itemGuid = ?",CONNECTION_ASYNC);
PrepareStatement(CHAR_DEL_ITEM_INSTANCE_ARTIFACT_BY_OWNER,"DELETE iia FROM item_instance_artifact iia LEFT JOIN item_instance ii ON iia.itemGuid = ii.guid WHERE ii.owner_guid = ?",CONNECTION_ASYNC);
PrepareStatement(CHAR_INS_ITEM_INSTANCE_ARTIFACT_POWERS,"INSERT INTO item_instance_artifact_powers (itemGuid, artifactPowerId, purchasedRank) VALUES (?, ?, ?)",CONNECTION_ASYNC);
PrepareStatement(CHAR_DEL_ITEM_INSTANCE_ARTIFACT_POWERS,"DELETE FROM item_instance_artifact_powers WHERE itemGuid = ?",CONNECTION_ASYNC);
PrepareStatement(CHAR_DEL_ITEM_INSTANCE_ARTIFACT_POWERS_BY_OWNER,"DELETE iiap FROM item_instance_artifact_powers iiap LEFT JOIN item_instance ii ON iiap.itemGuid = ii.guid WHERE ii.owner_guid = ?",CONNECTION_ASYNC);
PrepareStatement(CHAR_INS_ITEM_INSTANCE_MODIFIERS,"INSERT INTO item_instance_modifiers (itemGuid, fixedScalingLevel, artifactKnowledgeLevel) VALUES (?, ?, ?)",CONNECTION_ASYNC);
PrepareStatement(CHAR_DEL_ITEM_INSTANCE_MODIFIERS,"DELETE FROM item_instance_modifiers WHERE itemGuid = ?",CONNECTION_ASYNC);
PrepareStatement(CHAR_DEL_ITEM_INSTANCE_MODIFIERS_BY_OWNER,"DELETE im FROM item_instance_modifiers im LEFT JOIN item_instance ii ON im.itemGuid = ii.guid WHERE ii.owner_guid = ?",CONNECTION_ASYNC);
PrepareStatement(CHAR_SEL_GUILD_BANK_ITEMS,"SELECT "SelectItemInstanceContent", guildid, TabId, SlotId FROM guild_bank_item gbi INNER JOIN item_instance ii ON gbi.item_guid = ii.guid LEFT JOIN item_instance_gems ig ON ii.guid = ig.itemGuid LEFT JOIN item_instance_transmog iit ON ii.guid = iit.itemGuid LEFT JOIN item_instance_modifiers im ON ii.guid = im.itemGuid",CONNECTION_SYNCH);
PrepareStatement(CHAR_DEL_GUILD_BANK_RIGHTS,"DELETE FROM guild_bank_right WHERE guildid = ?",CONNECTION_ASYNC);// 0: uint32
PrepareStatement(CHAR_DEL_GUILD_BANK_RIGHTS_FOR_RANK,"DELETE FROM guild_bank_right WHERE guildid = ? AND rid = ?",CONNECTION_ASYNC);// 0: uint32, 1: uint8
PrepareStatement(CHAR_DEL_GUILD_EVENTLOG,"DELETE FROM guild_eventlog WHERE guildid = ? AND LogGuid = ?",CONNECTION_ASYNC);// 0: uint32, 1: uint32
PrepareStatement(CHAR_DEL_GUILD_EVENTLOGS,"DELETE FROM guild_eventlog WHERE guildid = ?",CONNECTION_ASYNC);// 0: uint32
PrepareStatement(CHAR_UPD_GUILD_MEMBER_PNOTE,"UPDATE guild_member SET pnote = ? WHERE guid = ?",CONNECTION_ASYNC);// 0: string, 1: uint32
PrepareStatement(CHAR_UPD_GUILD_MEMBER_OFFNOTE,"UPDATE guild_member SET offnote = ? WHERE guid = ?",CONNECTION_ASYNC);// 0: string, 1: uint32
PrepareStatement(CHAR_UPD_GUILD_MEMBER_RANK,"UPDATE guild_member SET rank = ? WHERE guid = ?",CONNECTION_ASYNC);// 0: uint8, 1: uint32
PrepareStatement(CHAR_UPD_GUILD_MOTD,"UPDATE guild SET motd = ? WHERE guildid = ?",CONNECTION_ASYNC);// 0: string, 1: uint32
PrepareStatement(CHAR_UPD_GUILD_INFO,"UPDATE guild SET info = ? WHERE guildid = ?",CONNECTION_ASYNC);// 0: string, 1: uint32
PrepareStatement(CHAR_UPD_GUILD_LEADER,"UPDATE guild SET leaderguid = ? WHERE guildid = ?",CONNECTION_ASYNC);// 0: uint32, 1: uint32
PrepareStatement(CHAR_UPD_GUILD_RANK_NAME,"UPDATE guild_rank SET rname = ? WHERE rid = ? AND guildid = ?",CONNECTION_ASYNC);// 0: string, 1: uint8, 2: uint32
PrepareStatement(CHAR_UPD_GUILD_RANK_RIGHTS,"UPDATE guild_rank SET rights = ? WHERE rid = ? AND guildid = ?",CONNECTION_ASYNC);// 0: uint32, 1: uint8, 2: uint32
PrepareStatement(CHAR_DEL_ALL_GUILD_ACHIEVEMENTS,"DELETE FROM guild_achievement WHERE guildId = ? AND achievement NOT IN (5407,5408,5409,5410,5411,5985,6126,6628,6678,6679,6680,8257,8512,8513,9397,9399,10380)",CONNECTION_ASYNC);
PrepareStatement(CHAR_SEL_CHANNEL,"SELECT name, announce, ownership, password, bannedList FROM channels WHERE name = ? AND team = ?",CONNECTION_SYNCH);
"appearance15=?, appearance16=?, appearance17=?, appearance18=?, mainHandEnchant=?, offHandEnchant=? WHERE guid=? AND setguid=? AND setindex=?",CONNECTION_ASYNC);
PrepareStatement(CHAR_DEL_ALL_GAME_EVENT_CONDITION_SAVE,"DELETE FROM game_event_condition_save WHERE eventEntry = ?",CONNECTION_ASYNC);
PrepareStatement(CHAR_DEL_GAME_EVENT_CONDITION_SAVE,"DELETE FROM game_event_condition_save WHERE eventEntry = ? AND condition_id = ?",CONNECTION_ASYNC);
PrepareStatement(CHAR_INS_GAME_EVENT_CONDITION_SAVE,"INSERT INTO game_event_condition_save (eventEntry, condition_id, done) VALUES (?, ?, ?)",CONNECTION_ASYNC);
PrepareStatement(CHAR_SEL_PETITION_BY_OWNER,"SELECT petitionguid FROM petition WHERE ownerguid = ?",CONNECTION_SYNCH);
PrepareStatement(CHAR_SEL_PETITION_SIGNATURES,"SELECT ownerguid, (SELECT COUNT(playerguid) FROM petition_sign WHERE petition_sign.petitionguid = ?) AS signs FROM petition WHERE petitionguid = ?",CONNECTION_SYNCH);
PrepareStatement(CHAR_SEL_PETITION_SIG_BY_ACCOUNT,"SELECT playerguid FROM petition_sign WHERE player_account = ? AND petitionguid = ?",CONNECTION_SYNCH);
PrepareStatement(CHAR_SEL_PETITION_OWNER_BY_GUID,"SELECT ownerguid FROM petition WHERE petitionguid = ?",CONNECTION_SYNCH);
PrepareStatement(CHAR_SEL_PETITION_SIG_BY_GUID,"SELECT ownerguid, petitionguid FROM petition_sign WHERE playerguid = ?",CONNECTION_SYNCH);
PrepareStatement(CHAR_REP_CHARACTER_ARENA_STATS,"REPLACE INTO character_arena_stats (guid, slot, matchMakerRating) VALUES (?, ?, ?)",CONNECTION_ASYNC);
PrepareStatement(CHAR_SEL_PLAYER_ARENA_TEAMS,"SELECT arena_team_member.arenaTeamId FROM arena_team_member JOIN arena_team ON arena_team_member.arenaTeamId = arena_team.arenaTeamId WHERE guid = ?",CONNECTION_SYNCH);
PrepareStatement(CHAR_DEL_CORPSES_FROM_MAP,"DELETE cp, c FROM corpse_phases cp INNER JOIN corpse c ON cp.OwnerGuid = c.guid WHERE c.mapId = ? AND c.instanceId = ?",CONNECTION_ASYNC);
PrepareStatement(CHAR_SEL_CORPSE_PHASES,"SELECT cp.OwnerGuid, cp.PhaseId FROM corpse_phases cp LEFT JOIN corpse c ON cp.OwnerGuid = c.guid WHERE c.mapId = ? AND c.instanceId = ?",CONNECTION_SYNCH);
PrepareStatement(CHAR_DEL_CREATURE_RESPAWN,"DELETE FROM creature_respawn WHERE guid = ? AND mapId = ? AND instanceId = ?",CONNECTION_ASYNC);
PrepareStatement(CHAR_DEL_CREATURE_RESPAWN_BY_INSTANCE,"DELETE FROM creature_respawn WHERE mapId = ? AND instanceId = ?",CONNECTION_ASYNC);
PrepareStatement(CHAR_SEL_MAX_CREATURE_RESPAWNS,"SELECT MAX(respawnTime), instanceId FROM creature_respawn WHERE instanceId > 0 GROUP BY instanceId",CONNECTION_SYNCH);
PrepareStatement(CHAR_DEL_GM_COMPLAINT,"DELETE FROM gm_complaint WHERE id = ?",CONNECTION_ASYNC);
PrepareStatement(CHAR_SEL_GM_COMPLAINT_CHATLINES,"SELECT timestamp, text FROM gm_complaint_chatlog WHERE complaintId = ? ORDER BY lineId ASC",CONNECTION_SYNCH);
PrepareStatement(CHAR_UPD_CHARACTER,"UPDATE characters SET name=?,race=?,class=?,gender=?,level=?,xp=?,money=?,skin=?,face=?,hairStyle=?,hairColor=?,facialStyle=?,customDisplay1=?,customDisplay2=?,customDisplay3=?,bankSlots=?,restState=?,playerFlags=?,playerFlagsEx=?,"
"equipmentCache=?,knownTitles=?,actionBars=?,grantableLevels=?,online=?,honor=?,honorLevel=?,prestigeLevel=?,honorRestState=?,honorRestBonus=? WHERE guid=?",CONNECTION_ASYNC);
PrepareStatement(CHAR_UPD_RESTORE_DELETE_INFO,"UPDATE characters SET name = ?, account = ?, deleteDate = NULL, deleteInfos_Name = NULL, deleteInfos_Account = NULL WHERE deleteDate IS NOT NULL AND guid = ?",CONNECTION_ASYNC);
PrepareStatement(CHAR_SEL_CHARACTER_AURA_FROZEN,"SELECT characters.name, character_aura.remainTime FROM characters LEFT JOIN character_aura ON (characters.guid = character_aura.guid) WHERE character_aura.spell = 9454",CONNECTION_SYNCH);
PrepareStatement(CHAR_SEL_CHAR_DEL_INFO_BY_GUID,"SELECT guid, deleteInfos_Name, deleteInfos_Account, deleteDate FROM characters WHERE deleteDate IS NOT NULL AND guid = ?",CONNECTION_BOTH);
PrepareStatement(CHAR_SEL_CHAR_DEL_INFO_BY_NAME,"SELECT guid, deleteInfos_Name, deleteInfos_Account, deleteDate FROM characters WHERE deleteDate IS NOT NULL AND deleteInfos_Name LIKE CONCAT('%%', ?, '%%')",CONNECTION_SYNCH);
PrepareStatement(CHAR_SEL_CHAR_DEL_INFO,"SELECT guid, deleteInfos_Name, deleteInfos_Account, deleteDate FROM characters WHERE deleteDate IS NOT NULL",CONNECTION_SYNCH);
PrepareStatement(CHAR_SEL_CHARS_BY_ACCOUNT_ID,"SELECT guid FROM characters WHERE account = ?",CONNECTION_SYNCH);
PrepareStatement(CHAR_SEL_PINFO_BANS,"SELECT unbandate, bandate = unbandate, bannedby, banreason FROM character_banned WHERE guid = ? AND active ORDER BY bandate ASC LIMIT 1",CONNECTION_SYNCH);
PrepareStatement(CHAR_SEL_PINFO_MAILS,"SELECT SUM(CASE WHEN (checked & 1) THEN 1 ELSE 0 END) AS 'readmail', COUNT(*) AS 'totalmail' FROM mail WHERE `receiver` = ?",CONNECTION_SYNCH);
PrepareStatement(CHAR_SEL_PINFO_XP,"SELECT a.xp, b.guid FROM characters a LEFT JOIN guild_member b ON a.guid = b.guid WHERE a.guid = ?",CONNECTION_SYNCH);
PrepareStatement(CHAR_SEL_CHAR_COD_ITEM_MAIL,"SELECT id, messageType, mailTemplateId, sender, subject, body, money, has_items FROM mail WHERE receiver = ? AND has_items <> 0 AND cod <> 0",CONNECTION_SYNCH);
PrepareStatement(CHAR_SEL_CHAR_SOCIAL,"SELECT DISTINCT guid FROM character_social WHERE friend = ?",CONNECTION_SYNCH);
PrepareStatement(CHAR_SEL_CHAR_OLD_CHARS,"SELECT guid, deleteInfos_Account FROM characters WHERE deleteDate IS NOT NULL AND deleteDate < ?",CONNECTION_SYNCH);
PrepareStatement(CHAR_SEL_ARENA_TEAM_ID_BY_PLAYER_GUID,"SELECT arena_team_member.arenateamid FROM arena_team_member JOIN arena_team ON arena_team_member.arenateamid = arena_team.arenateamid WHERE guid = ? AND type = ? LIMIT 1",CONNECTION_SYNCH);
PrepareStatement(CHAR_SEL_MAIL,"SELECT id, messageType, sender, receiver, subject, body, has_items, expire_time, deliver_time, money, cod, checked, stationery, mailTemplateId FROM mail WHERE receiver = ? ORDER BY id DESC",CONNECTION_SYNCH);
PrepareStatement(CHAR_DEL_CHAR_AURA_FROZEN,"DELETE FROM character_aura WHERE spell = 9454 AND guid = ?",CONNECTION_ASYNC);
PrepareStatement(CHAR_SEL_CHAR_INVENTORY_COUNT_ITEM,"SELECT COUNT(itemEntry) FROM character_inventory ci INNER JOIN item_instance ii ON ii.guid = ci.item WHERE itemEntry = ?",CONNECTION_SYNCH);
PrepareStatement(CHAR_SEL_MAIL_COUNT_ITEM,"SELECT COUNT(itemEntry) FROM mail_items mi INNER JOIN item_instance ii ON ii.guid = mi.item_guid WHERE itemEntry = ?",CONNECTION_SYNCH);
PrepareStatement(CHAR_SEL_AUCTIONHOUSE_COUNT_ITEM,"SELECT COUNT(itemEntry) FROM auctionhouse ah INNER JOIN item_instance ii ON ii.guid = ah.itemguid WHERE itemEntry = ?",CONNECTION_SYNCH);
PrepareStatement(CHAR_SEL_GUILD_BANK_COUNT_ITEM,"SELECT COUNT(itemEntry) FROM guild_bank_item gbi INNER JOIN item_instance ii ON ii.guid = gbi.item_guid WHERE itemEntry = ?",CONNECTION_SYNCH);
PrepareStatement(CHAR_SEL_CHAR_INVENTORY_ITEM_BY_ENTRY,"SELECT ci.item, cb.slot AS bag, ci.slot, ci.guid, c.account, c.name FROM characters c "
"INNER JOIN character_inventory ci ON ci.guid = c.guid "
"INNER JOIN item_instance ii ON ii.guid = ci.item "
"LEFT JOIN character_inventory cb ON cb.item = ci.bag WHERE ii.itemEntry = ? LIMIT ?",CONNECTION_SYNCH);
PrepareStatement(CHAR_SEL_AUCTIONHOUSE_ITEM_BY_ENTRY,"SELECT ah.itemguid, ah.itemowner, c.account, c.name FROM auctionhouse ah INNER JOIN characters c ON c.guid = ah.itemowner INNER JOIN item_instance ii ON ii.guid = ah.itemguid WHERE ii.itemEntry = ? LIMIT ?",CONNECTION_SYNCH);
PrepareStatement(CHAR_SEL_GUILD_BANK_ITEM_BY_ENTRY,"SELECT gi.item_guid, gi.guildid, g.name FROM guild_bank_item gi INNER JOIN guild g ON g.guildid = gi.guildid INNER JOIN item_instance ii ON ii.guid = gi.item_guid WHERE ii.itemEntry = ? LIMIT ?",CONNECTION_SYNCH);
PrepareStatement(CHAR_DEL_CHAR_ACHIEVEMENT,"DELETE FROM character_achievement WHERE guid = ?",CONNECTION_ASYNC);
PrepareStatement(CHAR_DEL_CHAR_ACHIEVEMENT_PROGRESS,"DELETE FROM character_achievement_progress WHERE guid = ?",CONNECTION_ASYNC);
PrepareStatement(CHAR_INS_CHAR_ACHIEVEMENT,"INSERT INTO character_achievement (guid, achievement, date) VALUES (?, ?, ?)",CONNECTION_ASYNC);
PrepareStatement(CHAR_DEL_CHAR_ACHIEVEMENT_PROGRESS_BY_CRITERIA,"DELETE FROM character_achievement_progress WHERE guid = ? AND criteria = ?",CONNECTION_ASYNC);
PrepareStatement(CHAR_DEL_EXPIRED_CHAR_INSTANCE_BY_MAP_DIFF,"DELETE FROM character_instance USING character_instance LEFT JOIN instance ON character_instance.instance = id WHERE (extendState = 0 or permanent = 0) and map = ? and difficulty = ?",CONNECTION_ASYNC);
PrepareStatement(CHAR_DEL_GROUP_INSTANCE_BY_MAP_DIFF,"DELETE FROM group_instance USING group_instance LEFT JOIN instance ON group_instance.instance = id WHERE map = ? and difficulty = ?",CONNECTION_ASYNC);
PrepareStatement(CHAR_DEL_EXPIRED_INSTANCE_BY_MAP_DIFF,"DELETE FROM instance WHERE map = ? and difficulty = ? and (SELECT guid FROM character_instance WHERE extendState != 0 AND instance = id LIMIT 1) IS NULL",CONNECTION_ASYNC);
PrepareStatement(CHAR_UPD_EXPIRE_CHAR_INSTANCE_BY_MAP_DIFF,"UPDATE character_instance LEFT JOIN instance ON character_instance.instance = id SET extendState = extendState-1 WHERE map = ? and difficulty = ?",CONNECTION_ASYNC);
PrepareStatement(CHAR_DEL_CHAR_SKILL_LANGUAGES,"DELETE FROM character_skills WHERE skill IN (98, 113, 759, 111, 313, 109, 115, 315, 673, 137) AND guid = ?",CONNECTION_ASYNC);
PrepareStatement(CHAR_DEL_CHAR_QUESTSTATUS_OBJECTIVES_CRITERIA,"DELETE FROM character_queststatus_objectives_criteria WHERE guid = ?",CONNECTION_ASYNC);
PrepareStatement(CHAR_DEL_CHAR_QUESTSTATUS_OBJECTIVES_CRITERIA_PROGRESS,"DELETE FROM character_queststatus_objectives_criteria_progress WHERE guid = ?",CONNECTION_ASYNC);
PrepareStatement(CHAR_DEL_CHAR_QUESTSTATUS_OBJECTIVES_CRITERIA_PROGRESS_BY_CRITERIA,"DELETE FROM character_queststatus_objectives_criteria_progress WHERE guid = ? AND criteriaId = ?",CONNECTION_ASYNC);
PrepareStatement(CHAR_DEL_CHAR_SOCIAL_BY_GUID,"DELETE FROM character_social WHERE guid = ?",CONNECTION_ASYNC);
PrepareStatement(CHAR_DEL_CHAR_SOCIAL_BY_FRIEND,"DELETE FROM character_social WHERE friend = ?",CONNECTION_ASYNC);
PrepareStatement(CHAR_DEL_CHAR_ACHIEVEMENT_BY_ACHIEVEMENT,"DELETE FROM character_achievement WHERE achievement = ? AND guid = ?",CONNECTION_ASYNC);
PrepareStatement(CHAR_UPD_CHAR_ACHIEVEMENT,"UPDATE character_achievement SET achievement = ? where achievement = ? AND guid = ?",CONNECTION_ASYNC);
PrepareStatement(CHAR_UPD_CHAR_INVENTORY_FACTION_CHANGE,"UPDATE item_instance ii, character_inventory ci SET ii.itemEntry = ? WHERE ii.itemEntry = ? AND ci.guid = ? AND ci.item = ii.guid",CONNECTION_ASYNC);
PrepareStatement(CHAR_DEL_CHAR_SPELL_BY_SPELL,"DELETE FROM character_spell WHERE spell = ? AND guid = ?",CONNECTION_ASYNC);
PrepareStatement(CHAR_UPD_CHAR_SPELL_FACTION_CHANGE,"UPDATE character_spell SET spell = ? where spell = ? AND guid = ?",CONNECTION_ASYNC);
PrepareStatement(CHAR_SEL_CHAR_REP_BY_FACTION,"SELECT standing FROM character_reputation WHERE faction = ? AND guid = ?",CONNECTION_SYNCH);
PrepareStatement(CHAR_DEL_CHAR_REP_BY_FACTION,"DELETE FROM character_reputation WHERE faction = ? AND guid = ?",CONNECTION_ASYNC);
PrepareStatement(CHAR_UPD_CHAR_REP_FACTION_CHANGE,"UPDATE character_reputation SET faction = ?, standing = ? WHERE faction = ? AND guid = ?",CONNECTION_ASYNC);
PrepareStatement(CHAR_UPD_CHAR_TITLES_FACTION_CHANGE,"UPDATE characters SET knownTitles = ? WHERE guid = ?",CONNECTION_ASYNC);
PrepareStatement(CHAR_RES_CHAR_TITLES_FACTION_CHANGE,"UPDATE characters SET chosenTitle = 0 WHERE guid = ?",CONNECTION_ASYNC);
PrepareStatement(CHAR_DEL_CHAR_ACHIEVEMENTS,"DELETE FROM character_achievement WHERE guid = ? AND achievement NOT IN (456,457,458,459,460,461,462,463,464,465,466,467,1400,1402,1404,1405,1406,1407,1408,1409,1410,1411,1412,1413,1414,1415,1416,1417,1418,1419,1420,1421,1422,1423,1424,1425,1426,1427,1463,3117,3259,4078,4576,4998,4999,5000,5001,5002,5003,5004,5005,5006,5007,5008,5381,5382,5383,5384,5385,5386,5387,5388,5389,5390,5391,5392,5393,5394,5395,5396,6433,6523,6524,6743,6744,6745,6746,6747,6748,6749,6750,6751,6752,6829,6859,6860,6861,6862,6863,6864,6865,6866,6867,6868,6869,6870,6871,6872,6873)",CONNECTION_ASYNC);
PrepareStatement(CHAR_DEL_CHAR_QUESTSTATUS_OBJECTIVES_BY_QUEST,"DELETE FROM character_queststatus_objectives WHERE guid = ? AND quest = ?",CONNECTION_ASYNC);
PrepareStatement(CHAR_DEL_CHAR_QUESTSTATUS_REWARDED_BY_QUEST,"DELETE FROM character_queststatus_rewarded WHERE guid = ? AND quest = ?",CONNECTION_ASYNC);
PrepareStatement(CHAR_UPD_CHAR_QUESTSTATUS_REWARDED_FACTION_CHANGE,"UPDATE character_queststatus_rewarded SET quest = ? WHERE quest = ? AND guid = ?",CONNECTION_ASYNC);
PrepareStatement(CHAR_UPD_CHAR_QUESTSTATUS_REWARDED_ACTIVE,"UPDATE character_queststatus_rewarded SET active = 1 WHERE guid = ?",CONNECTION_ASYNC);
PrepareStatement(CHAR_UPD_CHAR_QUESTSTATUS_REWARDED_ACTIVE_BY_QUEST,"UPDATE character_queststatus_rewarded SET active = 0 WHERE quest = ? AND guid = ?",CONNECTION_ASYNC);
PrepareStatement(CHAR_DEL_INVALID_QUEST_PROGRESS_CRITERIA,"DELETE FROM character_queststatus_objectives_criteria WHERE questObjectiveId = ?",CONNECTION_ASYNC);
PrepareStatement(CHAR_SEL_PET_SLOTS,"SELECT owner, slot FROM character_pet WHERE owner = ? AND slot >= ? AND slot <= ? ORDER BY slot",CONNECTION_ASYNC);
PrepareStatement(CHAR_SEL_PET_SLOTS_DETAIL,"SELECT owner, id, entry, level, name, modelid FROM character_pet WHERE owner = ? AND slot >= ? AND slot <= ? ORDER BY slot",CONNECTION_ASYNC);
PrepareStatement(CHAR_SEL_PET_ENTRY,"SELECT entry FROM character_pet WHERE owner = ? AND id = ? AND slot >= ? AND slot <= ?",CONNECTION_ASYNC);
PrepareStatement(CHAR_SEL_PET_SLOT_BY_ID,"SELECT slot, entry FROM character_pet WHERE owner = ? AND id = ?",CONNECTION_ASYNC);
PrepareStatement(CHAR_SEL_PET_SPELL_LIST,"SELECT DISTINCT pet_spell.spell FROM pet_spell, character_pet WHERE character_pet.owner = ? AND character_pet.id = pet_spell.guid AND character_pet.id <> ?",CONNECTION_SYNCH);
PrepareStatement(CHAR_SEL_CHAR_PET,"SELECT id FROM character_pet WHERE owner = ? AND id <> ?",CONNECTION_SYNCH);
PrepareStatement(CHAR_SEL_CHAR_PETS,"SELECT id FROM character_pet WHERE owner = ?",CONNECTION_SYNCH);
PrepareStatement(CHAR_DEL_CHAR_PET_DECLINEDNAME_BY_OWNER,"DELETE FROM character_pet_declinedname WHERE owner = ?",CONNECTION_ASYNC);
PrepareStatement(CHAR_DEL_CHAR_PET_DECLINEDNAME,"DELETE FROM character_pet_declinedname WHERE id = ?",CONNECTION_ASYNC);
PrepareStatement(CHAR_SEL_PET_SPELL_COOLDOWN,"SELECT spell, time, categoryId, categoryEnd FROM pet_spell_cooldown WHERE guid = ? AND time > UNIX_TIMESTAMP()",CONNECTION_SYNCH);
PrepareStatement(CHAR_SEL_PET_DECLINED_NAME,"SELECT genitive, dative, accusative, instrumental, prepositional FROM character_pet_declinedname WHERE owner = ? AND id = ?",CONNECTION_SYNCH);
PrepareStatement(CHAR_DEL_PET_AURAS,"DELETE FROM pet_aura WHERE guid = ?",CONNECTION_BOTH);
PrepareStatement(CHAR_SEL_PET_SPELL_CHARGES,"SELECT categoryId, rechargeStart, rechargeEnd FROM pet_spell_charges WHERE guid = ? AND rechargeEnd > UNIX_TIMESTAMP() ORDER BY rechargeEnd",CONNECTION_SYNCH);
PrepareStatement(CHAR_DEL_PET_SPELL_CHARGES,"DELETE FROM pet_spell_charges WHERE guid = ?",CONNECTION_ASYNC);
PrepareStatement(CHAR_UPD_CHAR_PET_SLOT_BY_SLOT_EXCLUDE_ID,"UPDATE character_pet SET slot = ? WHERE owner = ? AND slot = ? AND id <> ?",CONNECTION_ASYNC);
PrepareStatement(CHAR_UPD_CHAR_PET_SLOT_BY_SLOT,"UPDATE character_pet SET slot = ? WHERE owner = ? AND slot = ?",CONNECTION_ASYNC);
PrepareStatement(CHAR_DEL_ALL_PET_SPELLS_BY_OWNER,"DELETE FROM pet_spell WHERE guid in (SELECT id FROM character_pet WHERE owner=?)",CONNECTION_ASYNC);
PrepareStatement(CHAR_SEL_PVPSTATS_FACTIONS_OVERALL,"SELECT winner_faction, COUNT(*) AS count FROM pvpstats_battlegrounds WHERE DATEDIFF(NOW(), date) < 7 GROUP BY winner_faction ORDER BY winner_faction ASC",CONNECTION_SYNCH);
PrepareStatement(CHAR_UPD_QUEST_TRACK_GM_COMPLETE,"UPDATE quest_tracker SET completed_by_gm = 1 WHERE id = ? AND character_guid = ? ORDER BY quest_accept_time DESC LIMIT 1",CONNECTION_ASYNC);
PrepareStatement(CHAR_UPD_QUEST_TRACK_COMPLETE_TIME,"UPDATE quest_tracker SET quest_complete_time = NOW() WHERE id = ? AND character_guid = ? ORDER BY quest_accept_time DESC LIMIT 1",CONNECTION_ASYNC);
PrepareStatement(CHAR_UPD_QUEST_TRACK_ABANDON_TIME,"UPDATE quest_tracker SET quest_abandon_time = NOW() WHERE id = ? AND character_guid = ? ORDER BY quest_accept_time DESC LIMIT 1",CONNECTION_ASYNC);
PrepareStatement(CHAR_SEL_CHARACTER_GARRISON,"SELECT siteLevelId, followerActivationsRemainingToday FROM character_garrison WHERE guid = ?",CONNECTION_ASYNC);
PrepareStatement(CHAR_INS_CHARACTER_GARRISON,"INSERT INTO character_garrison (guid, siteLevelId, followerActivationsRemainingToday) VALUES (?, ?, ?)",CONNECTION_ASYNC);
PrepareStatement(CHAR_DEL_CHARACTER_GARRISON,"DELETE FROM character_garrison WHERE guid = ?",CONNECTION_ASYNC);
PrepareStatement(CHAR_UPD_CHARACTER_GARRISON_FOLLOWER_ACTIVATIONS,"UPDATE character_garrison SET followerActivationsRemainingToday = ?",CONNECTION_ASYNC);
PrepareStatement(CHAR_SEL_CHARACTER_GARRISON_BLUEPRINTS,"SELECT buildingId FROM character_garrison_blueprints WHERE guid = ?",CONNECTION_ASYNC);
PrepareStatement(CHAR_INS_CHARACTER_GARRISON_BLUEPRINTS,"INSERT INTO character_garrison_blueprints (guid, buildingId) VALUES (?, ?)",CONNECTION_ASYNC);
PrepareStatement(CHAR_DEL_CHARACTER_GARRISON_BLUEPRINTS,"DELETE FROM character_garrison_blueprints WHERE guid = ?",CONNECTION_ASYNC);
PrepareStatement(CHAR_SEL_CHARACTER_GARRISON_BUILDINGS,"SELECT plotInstanceId, buildingId, timeBuilt, active FROM character_garrison_buildings WHERE guid = ?",CONNECTION_ASYNC);
PrepareStatement(CHAR_DEL_CHARACTER_GARRISON_FOLLOWERS,"DELETE gfab, gf FROM character_garrison_follower_abilities gfab INNER JOIN character_garrison_followers gf ON gfab.dbId = gf.dbId WHERE gf.guid = ?",CONNECTION_ASYNC);
PrepareStatement(CHAR_SEL_CHARACTER_GARRISON_FOLLOWER_ABILITIES,"SELECT gfab.dbId, gfab.abilityId FROM character_garrison_follower_abilities gfab INNER JOIN character_garrison_followers gf ON gfab.dbId = gf.dbId WHERE guid = ? ORDER BY gfab.slot",CONNECTION_ASYNC);
PrepareStatement(CHAR_INS_CHARACTER_GARRISON_FOLLOWER_ABILITIES,"INSERT INTO character_garrison_follower_abilities (dbId, abilityId, slot) VALUES (?, ?, ?)",CONNECTION_ASYNC);
PrepareStatement(CHAR_SEL_SCENARIO_INSTANCE_CRITERIA_FOR_INSTANCE,"SELECT criteria, counter, date FROM instance_scenario_progress WHERE id = ?",CONNECTION_SYNCH);