首页 > 解决方案 > 使用 SQL Query 获取玩家位置的方法

问题描述

我想创建一个 BuildFFA 插件。这个插件包含一个统计系统。我想创建一个计算你的位置的方法。

public static int ranking(UUID uuid) {
        try (PreparedStatement ps = MySQL.getConnection().prepareStatement("SELECT *, ROW_NUMBER() OVER (ORDER BY Kills DESC) pos FROM kills WHERE UUID = ?")){
            ps.setString(1, uuid.toString());
            ResultSet rs = ps.executeQuery(); 
            if(rs.next()) {
                return rs.getRow();
            }
        } catch (SQLException e) {
            e.printStackTrace();
        }
        return -1;
    }

问题:如果数据库包含播放器,它总是返回 1。我该如何修复它?

标签: javamysqlsqleclipse-pluginminecraft

解决方案


您需要使用rs.getInt('<columnName>')而不是rs.getRow()


推荐阅读