java.lang.IllegalArgumentException : Cannot bind argument at index 0 because the index is out of range. 该语句有4个参数

标签 java android sqlite

Android SQLLite 给我以下错误:

 SQLiteStatement tgStatement = dbo.compileStatement("INSERT OR REPLACE INTO Game_Team" +
                "(teamId, gameId, pos, score) VALUES (?,?,?,?) ");

这就是我尝试做的原因:

tgStatement.bindLong(0, 1);

我得到一个错误

java.lang.IllegalArgumentException:无法在索引 0 处绑定(bind)参数,因为索引超出范围。

语句有4个参数。

所以,我的问题是,如果有 4 个参数,为什么它会提示索引 0 处的参数?怎么会超出范围呢?

最佳答案

参数是从 1 开始索引的。索引需要从 1 运行到 4,因此 0 超出范围。

关于java.lang.IllegalArgumentException : Cannot bind argument at index 0 because the index is out of range. 该语句有4个参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25587858/

相关文章:

sql - 如果值不存在,则SQLite插入值

java - 没有@Transactional的Hibernate sessionFactory.getCurrentSession()

java - spring security : NoSuchBeanDefinitionException: No qualifying bean of type [org. springframework.security.config.annotation.ObjectPostProcessor] 找到

JAVA 如何将数字分组应用于方程

android - 在设置中创建 Android 首选项以设置密码

java - 自定义输入过滤器接受正则表达式中的数值

Android slider 库在包含到我的应用程序时崩溃?

php - 带有消息 'could not find driver' 的“PDOException”(Centos,PHP 5.6)

java - AXiS2 - 返回字符串值时出现问题。 < 和 > 正在转换为 < 和 >

java - 从 fragment 访问 SQLite 数据库