我的jsp页面上有一个表,其中有一列由类型为CLOB的数据库列填充。我遇到了一些麻烦,并且看到了有关这方面的其他问题,但答案对我没有帮助。这里是我的陈述,其中评论是CLOB。如何使用CLOB数据类型选择列
stmt = conn.prepareStatement("SELECT DISTINCT restriction, person, start_date, end_date, comments "
+ " FROM restrictions WHERE person = ? "
+ " AND (start_date BETWEEN TO_DATE (? , 'yyyy/mm/dd') AND TO_DATE (? , 'yyyy/mm/dd') "
+ " OR start_date < TO_DATE (? , 'yyyy/mm/dd') AND end_date IS NULL) ");
stmt.setString(1, Id);
stmt.setString(2, StartRest);
stmt.setString(3, EndRest);
stmt.setString(4, EndRest);
result = stmt.executeQuery();
然后,我将有一个while循环中的列:
while (result.next()) {
restrictions = StringUtils.defaultString(result.getString("str_restriction"));
.......
// here is where I would get my Clob data from the query.
所以,基本上,我想知道是否有一种方法来翻译在查询中CLOB,甚至在java代码,所以它可以在我的页面中使用。
2个问题:哪一部分是CLOB?限制吗?第二:为什么它是一个CLOB而不是文本(或中/长文本)?从您的描述中不清楚 – PhD
感谢您的阅读。 1.'comments'是一个CLOB,见第一段2.一些(很少)将在该列中有很长的文字。不幸的是,表格设计不是我的,所以它可能在创建时就是另一种数据类型。 – Dan
1.你有哪些麻烦?你尝试了什么,你有哪些例外?你用getClob()试过吗? 2.为什么不使用日期(java.sql.Date实例)而不是使用TO_DATE解析的字符串? –