void RuleManager::_SaveRule(Database *db, RuleType type, uint16 index) { char vstr[100]; switch(type) { case IntRule: sprintf(vstr, "%d", m_RuleIntValues[index]); break; case RealRule: sprintf(vstr, "%.13f", m_RuleRealValues[index]); break; case BoolRule: sprintf(vstr, "%s", m_RuleBoolValues[index]?"true":"false"); break; } char errbuf[MYSQL_ERRMSG_SIZE]; char* query = 0; if (!db->RunQuery(query, MakeAnyLenString(&query, "REPLACE INTO rule_values (ruleset_id, rule_name, rule_value) " " VALUES(%d, '%s', '%s')", m_activeRuleset, _GetRuleName(type, index), vstr),errbuf)) { _log(RULES__ERROR, "Fauled to set rule in the database: %s: %s", query,errbuf); } safe_delete_array(query); }
void RuleManager::_SaveRule(Database *database, RuleType type, uint16 index) { char value_string[100]; switch(type) { case IntRule: sprintf(value_string, "%d", m_RuleIntValues[index]); break; case RealRule: sprintf(value_string, "%.13f", m_RuleRealValues[index]); break; case BoolRule: sprintf(value_string, "%s", m_RuleBoolValues[index]?"true":"false"); break; } std::string query = StringFormat("REPLACE INTO rule_values " "(ruleset_id, rule_name, rule_value) " " VALUES(%d, '%s', '%s')", m_activeRuleset, _GetRuleName(type, index), value_string); auto results = database->QueryDatabase(query); }
void RuleManager::_SaveRule(Database *db, RuleType type, uint16 index) { char vstr[100]; switch(type) { case IntRule: sprintf(vstr, "%d", m_RuleIntValues[index]); break; case RealRule: sprintf(vstr, "%.13f", m_RuleRealValues[index]); break; case BoolRule: sprintf(vstr, "%s", m_RuleBoolValues[index]?"true":"false"); break; } std::string query = StringFormat("REPLACE INTO rule_values " "(ruleset_id, rule_name, rule_value) " " VALUES(%d, '%s', '%s')", m_activeRuleset, _GetRuleName(type, index), vstr); auto results = db->QueryDatabase(query); if (!results.Success()) _log(RULES__ERROR, "Fauled to set rule in the database: %s: %s", query.c_str(), results.ErrorMessage().c_str()); }