Java 如何将此SQL查询从字符串转换为Int?
如何将此SQL查询从字符串转换为IntJava 如何将此SQL查询从字符串转换为Int?,java,derby,Java,Derby,如何将此SQL查询从字符串转换为Int String sql = "DELETE FROM DEMO.QUESTION " + "WHERE CAST (QUESTION_ID = '"+question+"' ,INT(10))"; 回答您的问题:您正在尝试对布尔值执行cast操作,我认为这不是您想要的(而且无论如何都是无关的) 所以,我认为你要做的是: sql = "delete from demo.question " + "where QUESTION_ID
String sql = "DELETE FROM DEMO.QUESTION " +
"WHERE CAST (QUESTION_ID = '"+question+"' ,INT(10))";
回答您的问题:您正在尝试对布尔值执行
cast
操作,我认为这不是您想要的(而且无论如何都是无关的)
所以,我认为你要做的是:
sql = "delete from demo.question " +
"where QUESTION_ID = cast('" + question + "', int)"
对此有一些评论:
cast
功能问题变量包含值“abc”
,您会怎么做?考虑一下这个场景。
更新 由于您正在使用Java,并且加强了我的第三个观察,所以您应该看看(以及)
我坚持认为,与其传递字符串并在查询中强制转换它,不如在Java代码中将其作为整数进行解析,从而摆脱您的问题。嗯,微笑是件好事。。。真的。你能帮我吗?具体地说,你想做什么!?假设您使用的是MySQL,则为0或1。。。但是(至少对我来说)这没有任何意义!您可以只删除匹配值,然后继续!或您是否试图将
问题
变量转换为int
,然后执行删除操作?如果question
不是有效的int
类字符串,该怎么办?是的,我想这样做