java - 参数索引超出范围(1 > 参数个数,即 0)

标签 java mysql

我收到这个错误,谁能帮我找出查询中的错误?

public boolean populateLeagues(String leaguename, String password){

        Connect connect = new Connect();
        Connection conn = connect.Connection();
        Statement stmt = conn.createStatement();            
        String query = "INSERT INTO users VALUES('" + leaguename + "')";
        stmt.executeUpdate(query);
        conn.close();
}

最佳答案

AS @Jon Skeet 说,使用准备好的语句并将参数注入(inject)。通过这种方式,您不必弄清楚有关 sql 注入(inject)和数据格式的所有麻烦(考虑使用您提供的查询来全局存储日期时间)。 可能 leaguename 值为 null。请记住,字符串类型的默认值不是空字符串,而是 null

关于java - 参数索引超出范围(1 > 参数个数,即 0),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11618894/

相关文章:

java - 从方法返回对象数据类型

java - 序列化具有不可序列化父类的对象

mysql - 优化跨多个表的全文搜索

php - Ajax 分页,php 返回整个页面而不是分页的 div

c# - 在 C# 中验证用 Java (RSA) 签名的内容时出现问题

java - 如何用Java登录HTTPS网站?

java - 捕获 Java Hashmap 中的错误条件

python - 如何在映射 Django 模型时使用多个外键

mysql - sql时间实例频率

mysql - 按列 id 选择行,如果为空,则包括包含来自另一列的相同值的行