From 9e1d0588209c1f3c465949ef2826a8210cac0686 Mon Sep 17 00:00:00 2001 From: RedSparr0w Date: Sun, 22 Sep 2019 21:04:13 +1200 Subject: [PATCH] on duplicate key update --- .../org/crandor/game/events/GlobalEventManager.java | 11 ++++------- 1 file changed, 4 insertions(+), 7 deletions(-) diff --git a/09HDscape-server/src/org/crandor/game/events/GlobalEventManager.java b/09HDscape-server/src/org/crandor/game/events/GlobalEventManager.java index ca44cbe29..4db9c276a 100644 --- a/09HDscape-server/src/org/crandor/game/events/GlobalEventManager.java +++ b/09HDscape-server/src/org/crandor/game/events/GlobalEventManager.java @@ -92,18 +92,12 @@ public class GlobalEventManager implements CallBack { } public GlobalEventManager save() { - if (GameWorld.getDatabaseManager().update("server", "DELETE FROM `globalevents` WHERE worldid='" + GameWorld.getSettings().getWorldId() + "'") < 0) - return this; - Iterator> iterator = EVENTS.entrySet().iterator(); while(iterator.hasNext()) { Map.Entry entry = iterator.next(); - - if (entry.getValue() <= 0) - continue; - + StringBuilder query = new StringBuilder(); query.append("INSERT INTO `globalevents` "); @@ -116,6 +110,9 @@ public class GlobalEventManager implements CallBack { query.append(")"); + query.append(" ON DUPLICATE KEY UPDATE "); + query.append("eventTime='" + entry.getValue() + "'"); + GameWorld.getDatabaseManager().update("server", query.toString()); }