首页 > 解决方案 > PostgreSQL - 类型 int 的错误值:t

问题描述

我正在尝试从视图中执行选择,但出现此错误:

 Bad value for type int : t

我已经检查了everythng的类型并且它们匹配。alarm_id 是 int8 类型,id 是 long。这是执行查询的代码。

sql = "select * from alarm_view where alarm_id = ? "
try (PreparedStatement ps = super.prepareStatement_(sql)) {
        ps.setLong(1, id);
        try (ResultSet res = ps.executeQuery()) {
            if (res.next()) {
                alarm = alarmHelper.makeAlarmFromResultSet(res);
            }
        }
    }

标签: javapostgresqljdbc

解决方案


我强烈怀疑id这一行的变量类型:

ps.setLong(1, id);

实际上String而不是长/整数。在定义此变量的位置发布更多代码 - 从那里可能会更清楚。


推荐阅读