changed to this(where format changed): { String chr = st.nextToken(); String cmd = "UPDATE characters SET x = -84318, y = 244579, z = -3730 WHERE char_name = '"+chr+"'"; //fixed java.sql.Connection connection = null; try { connection = L2DatabaseFactory.getInstance().getConnection(); PreparedStatement statement = connection.prepareStatement(cmd); statement.execute(); statement.close(); connection = L2DatabaseFactory.getInstance().getConnection(); statement = connection.prepareStatement("SELECT obj_id FROM characters where char_name = '"+chr+"'"); //fixed ResultSet rset = statement.executeQuery(); int obj_id = rset.getInt(1); rset.close(); statement.close(); connection = L2DatabaseFactory.getInstance().getConnection(); statement = connection.prepareStatement("DELETE FROM character_shortcuts WHERE char_obj_id="+obj_id); //fixed statement.setInt(1, obj_id); statement.execute(); statement.close(); connection = L2DatabaseFactory.getInstance().getConnection(); statement = connection.prepareStatement("UPDATE character_inventory SET equipSlot = -1 WHERE char_obj_id = ?"+obj_id); //fixed statement.setInt(1, obj_id); statement.execute(); statement.close(); } got: java.sql.SQLException: Before start of result set at com.mysql.jdbc.ResultSet.checkRowPos(ResultSet.java:3620) at com.mysql.jdbc.ResultSet.getString(ResultSet.java:1758) at com.mysql.jdbc.ResultSet.getInt(ResultSet.java:1251) at com.mchange.v2.sql.filter.FilterResultSet.getInt(FilterResultSet.java:373) at net.sf.l2j.gameserver.clientpackets.Say2.(Say2.java:231) at net.sf.l2j.gameserver.PacketHandler.handlePacket(PacketHandler.java:274) at net.sf.l2j.gameserver.ClientThread.run(ClientThread.java:221) tried this (while added): { String chr = st.nextToken(); String cmd = "UPDATE characters SET x = -84318, y = 244579, z = -3730 WHERE char_name = '"+chr+"'"; java.sql.Connection connection = null; try { connection = L2DatabaseFactory.getInstance().getConnection(); PreparedStatement statement = connection.prepareStatement(cmd); statement.execute(); statement.close(); connection = L2DatabaseFactory.getInstance().getConnection(); statement = connection.prepareStatement("SELECT obj_id FROM characters where char_name = '"+chr+"'"); ResultSet rset = statement.executeQuery(); while (rset.next()) { //added this to test int obj_id = rset.getInt(1); rset.close(); statement.close(); connection = L2DatabaseFactory.getInstance().getConnection(); statement = connection.prepareStatement("DELETE FROM character_shortcuts WHERE char_obj_id="+obj_id); statement.setInt(1, obj_id); statement.execute(); statement.close(); connection = L2DatabaseFactory.getInstance().getConnection(); statement = connection.prepareStatement("UPDATE character_inventory SET equipSlot = -1 WHERE char_obj_id = ?"+obj_id); statement.setInt(1, obj_id); statement.execute(); statement.close(); } //close } got: could not move char:java.sql.SQLException: Parameter index out of range (1 > number of parameters, which is 0). java.sql.SQLException: Parameter index out of range (1 > number of parameters, which is 0). at com.mysql.jdbc.PreparedStatement.setInternal(PreparedStatement.java:2032) at com.mysql.jdbc.PreparedStatement.setInternal(PreparedStatement.java:2062) at com.mysql.jdbc.PreparedStatement.setInt(PreparedStatement.java:558) at com.mchange.v2.sql.filter.FilterPreparedStatement.setInt(FilterPreparedStatement.java:143) at net.sf.l2j.gameserver.clientpackets.Say2.(Say2.java:239) at net.sf.l2j.gameserver.PacketHandler.handlePacket(PacketHandler.java:274) at net.sf.l2j.gameserver.ClientThread.run(ClientThread.java:221)