我在Java中工作,试图确定像这样的东西的SQL类型:JDBC SqlParameterValue - 确定参数
我与它命名为“IDS”数组中的一个SqlParameterSource。我需要确定这些id所在的类型,例如numeric或varchar。我指定的代码,与前面例如:
return con.createArrayOf("varchar")
或
return con.createArrayOf("numeric")
我已经试过这样:
if (parametersource.getSqlType("ids") == something) {
// do something
}
else {
//do something else
}
我无法弄清楚如何做到这一点。 getSqlType似乎返回一个int,但我不知道要比较它以得到正确的比较。 还有另一种名为getTypeName的方法,但我不明白这是如何工作的。
这是什么'SqlParameterSource'的东西?如果您的JDBC驱动程序支持它,您可以使用'PreparedStatement.getParameterMetaData()':http://docs.oracle.com/javase/8/docs/api/java/sql/PreparedStatement.html#getParameterMetaData-- –
在纯JDBC,我会使用'ResultSetMetaData',但你似乎使用[Spring](http://docs.spring.io/spring/docs/current/javadoc-api/org/springframework/jdbc/core/namedparam/SqlParameterSource.html )(如果是这样,请将标记添加到您的问题中) – AxelH
JDBC本身没有任何称为“SqlParameterSource”的东西,因此您的问题似乎缺少一些信息。 – FrederikVH