异常java.lang.StringIndexOutOfBoundsException:字符串索引超出范围:0
问题描述:
这是我的方法,每次运行它总是说“无法从结果集中读取列值:cColor;字符串索引超出范围:0”并抛出线程“main”中的异常java.lang.StringIndexOutOfBoundsException:字符串索引超出范围:0.任何想法?有人可以告诉我错误在哪里吗?异常java.lang.StringIndexOutOfBoundsException:字符串索引超出范围:0
--OpenSession here--
Query query = session.createSQLQuery("SELECT * FROM db.tblUnits "
+ "WHERE csTat = :paramStation AND cbrach = :paramLocId"
+ "AND (cType = 'repo units' OR cType = 'svc units')")
.setParameter("paramLocId", locId)
.setParameter("paramStation", station);
List<Object[]> oAvailableUnits = (List<Object[]>) query.list();
--CloseSession here--
答
它发生的cColor栏是空的,其数据类型为char,所以我只是改变了数据类型为VARCHAR因为Java不能读取char数据类型。
为什么使用多线程标签? – Joe
你的堆栈跟踪包含行号和文件名,告诉你错误在哪里。在这里问我们并不好 - 特别是如果你不共享堆栈跟踪。无论如何,这几乎肯定不在您实际向我们展示的代码中。 –
错字。在下一行继续的字符串串联中,缺少“:paramLocId”和“AND”之间的空白。 –