Java 如何向PostgreSQL数据库发送指向字符变化属性的语句?

Java 如何向PostgreSQL数据库发送指向字符变化属性的语句?,java,postgresql,Java,Postgresql,这段代码中的属性在PostgreSQL中应该是字符变化的,但当我尝试为每个属性设置字符串时,它将不起作用,因此我认为设置字符串不是正确的方法,但我找不到解决方案,有什么帮助吗? org.postgresql.util.PSQLException:错误:“dob”列的类型为date 但表达式的类型是字符变化提示:您需要 重写或投射表达式。职位:139 at org.postgresql.core.v3.QueryExecutorImpl.receiveErrorResponse(QueryExec

这段代码中的属性在PostgreSQL中应该是字符变化的,但当我尝试为每个属性设置字符串时,它将不起作用,因此我认为设置字符串不是正确的方法,但我找不到解决方案,有什么帮助吗?

org.postgresql.util.PSQLException:错误:“dob”列的类型为date 但表达式的类型是字符变化提示:您需要 重写或投射表达式。职位:139 at org.postgresql.core.v3.QueryExecutorImpl.receiveErrorResponse(QueryExecutorImpl.java:2553) 在 org.postgresql.core.v3.QueryExecutorImpl.processResults(QueryExecutorImpl.java:2285) 位于org.postgresql.core.v3.QueryExecutorImpl.execute(QueryExecutorImpl.java:323) 位于org.postgresql.jdbc.PgStatement.executeInternal(PgStatement.java:481) 位于org.postgresql.jdbc.PgStatement.execute(PgStatement.java:401) 位于org.postgresql.jdbc.PgPreparedStatement.executeWithFlags(PgPreparedStatement.java:164) 位于org.postgresql.jdbc.PgPreparedStatement.executeUpdate(PgPreparedStatement.java:130) backendstructure.backendstructure$DBM.run(backendstructure.java:83)

错误:“dob”列的类型为日期,但表达式的类型为字符变化

您需要传递
java.time.LocalDate
的实例,而不是字符串

 statement.setObject(5, LocalDate.of(1999, 9,7));

它不执行数据库中的语句,而是执行catch before语句。executeUpdate();
 statement.setObject(5, LocalDate.of(1999, 9,7));