Java中PreparedStatement的setArray如何正确使用

PreparedStatement pstmt = conn.prepareStatement("update message set see=1 where id in (?)");
Array array = conn.createArrayOf("VARCHAR", new Object[]{"1", "2","3"});
pstmt.setArray(1, array);
ResultSet rs = pstmt.executeQuery();

第二句报错 SQLFeatureNotSupportedException
尝试过将VARCHAR都小写还是一样的错

阅读 11.8k
3 个回答

跟你的程序没关系,估计你用的mysql,mysql不支持setArray的。Oracle和PostgreSQL支持

SQLFeatureNotSupportedException

这个异常已经说得很清楚了,SQL特性不支持。检查你数据库版本是否支持,以及JDBC驱动版本是否与数据库版本对应

新手上路,请多包涵
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题