Solved MySQL (Result Sets)

Discussion in 'Plugin Development' started by dlange, Jul 2, 2015.

Thread Status:
Not open for further replies.
  1. Offline

    dlange

    I am trying to get a String from MySQL table but i get this error:
    Code:
    [15:24:20] [Server thread/WARN]: java.sql.SQLException: Column Index out of range, 0 < 1.
    [15:24:20] [Server thread/WARN]:     at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1073)
    [15:24:20] [Server thread/WARN]:     at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:987)
    [15:24:20] [Server thread/WARN]:     at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:982)
    [15:24:20] [Server thread/WARN]:     at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:927)
    [15:24:20] [Server thread/WARN]:     at com.mysql.jdbc.ResultSetImpl.checkColumnBounds(ResultSetImpl.java:812)
    [15:24:20] [Server thread/WARN]:     at com.mysql.jdbc.ResultSetImpl.getBoolean(ResultSetImpl.java:1632)
    [15:24:20] [Server thread/WARN]:     at net.venix.dev.core.database.bm.BanManager.getBoolean(BanManager.java:201)
    [15:24:20] [Server thread/WARN]:     at net.venix.dev.core.database.bm.BanManager.stillBanned(BanManager.java:46)
    [15:24:20] [Server thread/WARN]:     at net.venix.dev.core.database.bm.listeners.Block.onPreLogin(Block.java:50)
    [15:24:20] [Server thread/WARN]:     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    [15:24:20] [Server thread/WARN]:     at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
    [15:24:20] [Server thread/WARN]:     at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    [15:24:20] [Server thread/WARN]:     at java.lang.reflect.Method.invoke(Unknown Source)
    [15:24:20] [Server thread/WARN]:     at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:298)
    [15:24:20] [Server thread/WARN]:     at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:62)
    [15:24:20] [Server thread/WARN]:     at org.bukkit.plugin.SimplePluginManager.fireEvent(SimplePluginManager.java:514)
    [15:24:20] [Server thread/WARN]:     at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:499)
    [15:24:20] [Server thread/WARN]:     at net.minecraft.server.v1_7_R4.ThreadPlayerLookupUUID$1.evaluate(ThreadPlayerLookupUUID.java:89)
    [15:24:20] [Server thread/WARN]:     at net.minecraft.server.v1_7_R4.ThreadPlayerLookupUUID$1.evaluate(ThreadPlayerLookupUUID.java:86)
    [15:24:20] [Server thread/WARN]:     at org.bukkit.craftbukkit.v1_7_R4.util.Waitable.run(Waitable.java:24)
    [15:24:20] [Server thread/WARN]:     at net.minecraft.server.v1_7_R4.MinecraftServer.v(MinecraftServer.java:647)
    [15:24:20] [Server thread/WARN]:     at net.minecraft.server.v1_7_R4.DedicatedServer.v(DedicatedServer.java:289)
    [15:24:20] [Server thread/WARN]:     at net.minecraft.server.v1_7_R4.MinecraftServer.u(MinecraftServer.java:584)
    [15:24:20] [Server thread/WARN]:     at net.minecraft.server.v1_7_R4.MinecraftServer.run(MinecraftServer.java:490)
    [15:24:20] [Server thread/WARN]:     at net.minecraft.server.v1_7_R4.ThreadServerApplication.run(SourceFile:628)
    [15:24:20] [Server thread/WARN]: java.sql.SQLException: Before start of result set
    [15:24:20] [Server thread/WARN]:     at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1073)
    [15:24:20] [Server thread/WARN]:     at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:987)
    [15:24:20] [Server thread/WARN]:     at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:982)
    [15:24:20] [Server thread/WARN]:     at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:927)
    [15:24:20] [Server thread/WARN]:     at com.mysql.jdbc.ResultSetImpl.checkRowPos(ResultSetImpl.java:841)
    [15:24:20] [Server thread/WARN]:     at com.mysql.jdbc.ResultSetImpl.getStringInternal(ResultSetImpl.java:5656)
    [15:24:20] [Server thread/WARN]:     at com.mysql.jdbc.ResultSetImpl.getString(ResultSetImpl.java:5576)
    [15:24:20] [Server thread/WARN]:     at com.mysql.jdbc.ResultSetImpl.getString(ResultSetImpl.java:5616)
    [15:24:20] [Server thread/WARN]:     at net.venix.dev.core.database.bm.BanManager.getString(BanManager.java:166)
    [15:24:20] [Server thread/WARN]:     at net.venix.dev.core.database.bm.listeners.Block.onPreLogin(Block.java:51)
    [15:24:20] [Server thread/WARN]:     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    [15:24:20] [Server thread/WARN]:     at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
    [15:24:20] [Server thread/WARN]:     at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    [15:24:20] [Server thread/WARN]:     at java.lang.reflect.Method.invoke(Unknown Source)
    [15:24:20] [Server thread/WARN]:     at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:298)
    [15:24:20] [Server thread/WARN]:     at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:62)
    [15:24:20] [Server thread/WARN]:     at org.bukkit.plugin.SimplePluginManager.fireEvent(SimplePluginManager.java:514)
    [15:24:20] [Server thread/WARN]:     at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:499)
    [15:24:20] [Server thread/WARN]:     at net.minecraft.server.v1_7_R4.ThreadPlayerLookupUUID$1.evaluate(ThreadPlayerLookupUUID.java:89)
    [15:24:20] [Server thread/WARN]:     at net.minecraft.server.v1_7_R4.ThreadPlayerLookupUUID$1.evaluate(ThreadPlayerLookupUUID.java:86)
    [15:24:20] [Server thread/WARN]:     at org.bukkit.craftbukkit.v1_7_R4.util.Waitable.run(Waitable.java:24)
    [15:24:20] [Server thread/WARN]:     at net.minecraft.server.v1_7_R4.MinecraftServer.v(MinecraftServer.java:647)
    [15:24:20] [Server thread/WARN]:     at net.minecraft.server.v1_7_R4.DedicatedServer.v(DedicatedServer.java:289)
    [15:24:20] [Server thread/WARN]:     at net.minecraft.server.v1_7_R4.MinecraftServer.u(MinecraftServer.java:584)
    [15:24:20] [Server thread/WARN]:     at net.minecraft.server.v1_7_R4.MinecraftServer.run(MinecraftServer.java:490)
    [15:24:20] [Server thread/WARN]:     at net.minecraft.server.v1_7_R4.ThreadServerApplication.run(SourceFile:628)
    [15:24:21] [Server thread/WARN]: java.sql.SQLException: Before start of result set
    [15:24:21] [Server thread/WARN]:     at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1073)
    [15:24:21] [Server thread/WARN]:     at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:987)
    [15:24:21] [Server thread/WARN]:     at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:982)
    [15:24:21] [Server thread/WARN]:     at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:927)
    [15:24:21] [Server thread/WARN]:     at com.mysql.jdbc.ResultSetImpl.checkRowPos(ResultSetImpl.java:841)
    [15:24:21] [Server thread/WARN]:     at com.mysql.jdbc.ResultSetImpl.getStringInternal(ResultSetImpl.java:5656)
    [15:24:21] [Server thread/WARN]:     at com.mysql.jdbc.ResultSetImpl.getString(ResultSetImpl.java:5576)
    [15:24:21] [Server thread/WARN]:     at com.mysql.jdbc.ResultSetImpl.getString(ResultSetImpl.java:5616)
    [15:24:21] [Server thread/WARN]:     at net.venix.dev.core.database.bm.BanManager.getString(BanManager.java:166)
    [15:24:21] [Server thread/WARN]:     at net.venix.dev.core.database.bm.listeners.Block.onPreLogin(Block.java:52)
    [15:24:21] [Server thread/WARN]:     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    [15:24:21] [Server thread/WARN]:     at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
    [15:24:21] [Server thread/WARN]:     at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    [15:24:21] [Server thread/WARN]:     at java.lang.reflect.Method.invoke(Unknown Source)
    [15:24:21] [Server thread/WARN]:     at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:298)
    [15:24:21] [Server thread/WARN]:     at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:62)
    [15:24:21] [Server thread/WARN]:     at org.bukkit.plugin.SimplePluginManager.fireEvent(SimplePluginManager.java:514)
    [15:24:21] [Server thread/WARN]:     at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:499)
    [15:24:21] [Server thread/WARN]:     at net.minecraft.server.v1_7_R4.ThreadPlayerLookupUUID$1.evaluate(ThreadPlayerLookupUUID.java:89)
    [15:24:21] [Server thread/WARN]:     at net.minecraft.server.v1_7_R4.ThreadPlayerLookupUUID$1.evaluate(ThreadPlayerLookupUUID.java:86)
    [15:24:21] [Server thread/WARN]:     at org.bukkit.craftbukkit.v1_7_R4.util.Waitable.run(Waitable.java:24)
    [15:24:21] [Server thread/WARN]:     at net.minecraft.server.v1_7_R4.MinecraftServer.v(MinecraftServer.java:647)
    [15:24:21] [Server thread/WARN]:     at net.minecraft.server.v1_7_R4.DedicatedServer.v(DedicatedServer.java:289)
    [15:24:21] [Server thread/WARN]:     at net.minecraft.server.v1_7_R4.MinecraftServer.u(MinecraftServer.java:584)
    [15:24:21] [Server thread/WARN]:     at net.minecraft.server.v1_7_R4.MinecraftServer.run(MinecraftServer.java:490)
    [15:24:21] [Server thread/WARN]:     at net.minecraft.server.v1_7_R4.ThreadServerApplication.run(SourceFile:628)
    [15:24:21] [Server thread/WARN]: java.sql.SQLException: Before start of result set
    [15:24:21] [Server thread/WARN]:     at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1073)
    [15:24:21] [Server thread/WARN]:     at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:987)
    [15:24:21] [Server thread/WARN]:     at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:982)
    [15:24:21] [Server thread/WARN]:     at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:927)
    [15:24:21] [Server thread/WARN]:     at com.mysql.jdbc.ResultSetImpl.checkRowPos(ResultSetImpl.java:841)
    [15:24:21] [Server thread/WARN]:     at com.mysql.jdbc.ResultSetImpl.getStringInternal(ResultSetImpl.java:5656)
    [15:24:21] [Server thread/WARN]:     at com.mysql.jdbc.ResultSetImpl.getString(ResultSetImpl.java:5576)
    [15:24:21] [Server thread/WARN]:     at com.mysql.jdbc.ResultSetImpl.getString(ResultSetImpl.java:5616)
    [15:24:21] [Server thread/WARN]:     at net.venix.dev.core.database.bm.BanManager.getString(BanManager.java:166)
    [15:24:21] [Server thread/WARN]:     at net.venix.dev.core.database.bm.listeners.Block.onPreLogin(Block.java:53)
    [15:24:21] [Server thread/WARN]:     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    [15:24:21] [Server thread/WARN]:     at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
    [15:24:21] [Server thread/WARN]:     at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    [15:24:21] [Server thread/WARN]:     at java.lang.reflect.Method.invoke(Unknown Source)
    [15:24:21] [Server thread/WARN]:     at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:298)
    [15:24:21] [Server thread/WARN]:     at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:62)
    [15:24:21] [Server thread/WARN]:     at org.bukkit.plugin.SimplePluginManager.fireEvent(SimplePluginManager.java:514)
    [15:24:21] [Server thread/WARN]:     at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:499)
    [15:24:21] [Server thread/WARN]:     at net.minecraft.server.v1_7_R4.ThreadPlayerLookupUUID$1.evaluate(ThreadPlayerLookupUUID.java:89)
    [15:24:21] [Server thread/WARN]:     at net.minecraft.server.v1_7_R4.ThreadPlayerLookupUUID$1.evaluate(ThreadPlayerLookupUUID.java:86)
    [15:24:21] [Server thread/WARN]:     at org.bukkit.craftbukkit.v1_7_R4.util.Waitable.run(Waitable.java:24)
    [15:24:21] [Server thread/WARN]:     at net.minecraft.server.v1_7_R4.MinecraftServer.v(MinecraftServer.java:647)
    [15:24:21] [Server thread/WARN]:     at net.minecraft.server.v1_7_R4.DedicatedServer.v(DedicatedServer.java:289)
    [15:24:21] [Server thread/WARN]:     at net.minecraft.server.v1_7_R4.MinecraftServer.u(MinecraftServer.java:584)
    [15:24:21] [Server thread/WARN]:     at net.minecraft.server.v1_7_R4.MinecraftServer.run(MinecraftServer.java:490)
    [15:24:21] [Server thread/WARN]:     at net.minecraft.server.v1_7_R4.ThreadServerApplication.run(SourceFile:628)
    I know that it's saying i'm trying to get something before the start of the result set, but i don't know how to prevent/fix this.

    This is where it is happening:
    Code:
        public static String getString(OfflinePlayer p, String category, String table) {
            ResultSet result = sql.query("SELECT " + category + " FROM " + table + " WHERE player='" + p.getUniqueId().toString() + "';");
            String str;
    
            try {
                str = result.getString(category); // This line
            } catch (SQLException e) {
                e.printStackTrace();
                str = "Error retrieving " + category + ".";
            }
    
            return str;
        }
     
  2. Offline

    pie_flavor

    @dlange The pointer starts before the set; call next() or whatever the method is once before retrieving.
     
  3. Offline

    dlange

    @pie_flavor i tried that ;-; then it says before end of result set..
     
  4. Offline

    Hawktasard

  5. Offline

    dlange

    @Hawktasard Ik about prep statements, but thanks for the info :p
     
  6. Offline

    pie_flavor

    @dlange If it is initially before set, and then it is after set, then the set is empty.
     
Thread Status:
Not open for further replies.

Share This Page