private static void SaveEquipment(string externalPlayerId, SelectedPlayerUnit selectedPlayerUnit, MySqlConnection connection) { try { string deleteSql = "DELETE FROM player_unit_equipment " + "WHERE player_id = (SELECT player_id FROM player WHERE external_id = @externalPlayerId) " + "AND player_unit_id = @playerUnitId"; MySqlCommand command = new MySqlCommand(deleteSql, connection); command.Parameters.AddWithValue("externalPlayerId", externalPlayerId); command.Parameters.AddWithValue("playerUnitId", selectedPlayerUnit.playerUnitId); int returnVal = command.ExecuteNonQuery(); foreach (string weaponName in selectedPlayerUnit.equipmentSelections) { string sql = "INSERT INTO player_unit_equipment (player_id, player_unit_id, equipment_name) " + "VALUES ((SELECT player_id FROM player WHERE external_id = @externalPlayerId), @playerUnitId, @equipmentName) " + "ON DUPLICATE KEY UPDATE " + "equipment_name = @equipmentName"; command = new MySqlCommand(sql, connection); command.Parameters.AddWithValue("externalPlayerId", externalPlayerId); command.Parameters.AddWithValue("playerUnitId", selectedPlayerUnit.playerUnitId); command.Parameters.AddWithValue("equipmentName", weaponName); returnVal = command.ExecuteNonQuery(); } } catch (Exception ex) { Debug.LogError(ex.ToString()); } }
private static void SaveWeapons(string externalPlayerId, SelectedPlayerUnit selectedPlayerUnit, MySqlConnection connection) { try { string sql = "INSERT INTO player_unit_weapon (player_id, player_unit_id, weapon_name) " + "VALUES ((SELECT player_id FROM player WHERE external_id = @externalPlayerId), @playerUnitId, @weaponName) " + "ON DUPLICATE KEY UPDATE " + "weapon_name = @weaponName"; MySqlCommand command = new MySqlCommand(sql, connection); command.Parameters.AddWithValue("externalPlayerId", externalPlayerId); command.Parameters.AddWithValue("playerUnitId", selectedPlayerUnit.playerUnitId); command.Parameters.AddWithValue("weaponName", selectedPlayerUnit.weaponSelection); int returnVal = command.ExecuteNonQuery(); } catch (Exception ex) { Debug.LogError(ex.ToString()); } }
public static void SavePlayerUnit(string externalPlayerId, SelectedPlayerUnit selectedPlayerUnit) { MySqlConnection connection = new MySqlConnection(connectionString); try { connection.Open(); string sql = "INSERT INTO player_unit (player_id, player_unit_id, unit_type, name) " + "VALUES ((SELECT player_id FROM player WHERE external_id = @externalPlayerId), @playerUnitId, @unitType, @name) " + "ON DUPLICATE KEY UPDATE " + "name = @name"; MySqlCommand command = new MySqlCommand(sql, connection); command.Parameters.AddWithValue("externalPlayerId", externalPlayerId); command.Parameters.AddWithValue("playerUnitId", selectedPlayerUnit.playerUnitId); command.Parameters.AddWithValue("unitType", selectedPlayerUnit.unitType); command.Parameters.AddWithValue("name", selectedPlayerUnit.unitType); int returnVal = command.ExecuteNonQuery(); SaveWeapons(externalPlayerId, selectedPlayerUnit, connection); SaveEquipment(externalPlayerId, selectedPlayerUnit, connection); } catch (Exception ex) { Debug.LogError(ex.ToString()); } }