为了账号安全,请及时绑定邮箱和手机立即绑定

获取prepareStatement的可能的数据类型-Java DB2

获取prepareStatement的可能的数据类型-Java DB2

catspeake 2021-05-01 15:19:39
PreparedStatement在插入值之前,有什么方法可以让a接受数据类型吗?方案是我正在获取Excel(或OpenOffice)文档,我对其进行了解析以将数据导入数据库。有时,如果要表示数字0,则Excel中的单元格会留空。有没有一种方法可以从准备好的插入语句中获取列类型,以确保我必须解析哪个数据类型的值?我认为应该通过事先在表上运行select语句并仅查看ResultSet元数据来实现。但是,如果可能的话,我想解决这个问题。
查看完整描述

2 回答

?
慕慕森

TA贡献1856条经验 获得超17个赞

PreparedStatement不支持。它可以让您设置任何数据类型,但是当您执行查询时,就是当数据类型不匹配时,您会得到SQLException

最好的选择是使用SYSTEM CATALOG视图来标识列数据类型,并相应地设置/推导值。

DB2具有此视图SYSCAT.COLUMNS来满足您的需求。

查看完整回答
反对 回复 2021-05-12
?
RISEBY

TA贡献1856条经验 获得超5个赞

您可以从准备好的语句中获取参数元数据,它除其他外还包含参数数据类型。

ParameterMetaData metadata = preparedStatement.getParameterMetaData();
int type = metadata.getParameterType(col);

Java文档getParameterMetaData()


查看完整回答
反对 回复 2021-05-12
  • 2 回答
  • 0 关注
  • 158 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信