一尘不染

Java和Postgres枚举-如何使它们协同工作以进行更新?

sql

acttype是一个枚举,因此如果不将其强制转换为枚举,则无法将其作为普通字符串插入 INSERT INTO dir_act (actcode,actname,acttype,national_code) VALUES (?,?,?::enumcs,?)

至于更新,我确实尝试了如下相同的类型转换,但是没有用。

update dir_act set actname=?,acttype=?::enumcs,national_code=? where actcode=?

阅读 204

收藏
2021-03-17

共1个答案

一尘不染

您可以这样做避免在Enum上使用toString()

    stmt.setObject(2,AnimalType.DOG,java.sql.Types.OTHER)

适用于JDBC驱动程序postgresql 42.2.5

2021-03-17