关于jdbc设置参数值的问题!
updateTieUsersetuname=?whereid=1用preparedStatement设置uname的值,从外面传入的参数unameString,如果una...
update TieUser set uname = ? where id = 1 用preparedStatement设置uname的值,从外面传入的参数unameString,如果unameString不为空,则设置preparedStatement.setString(1, unameString); 如果unameString为空,怎么uname值保持原来数据库中值不变,该怎么写?求教大神!
当然我问的是不改变sql语句的情况下怎么写? 展开
当然我问的是不改变sql语句的情况下怎么写? 展开
1个回答
展开全部
在前面加上if语句,if(unameString!=null)
sql=update TieUser set uname = ? where id = 1;执行sql
else
;
为空的话什么都不做。
或者你可以这么写
sql=“update TieUser set 列=列”(这个列随便是哪个,是为了保持下面的条件都不执行也要有列,不然sql报错)
if(unameString!=null)
sql+=“ ,uname = ?”;
sql+=“ where id = 1”;
执行sql
sql=update TieUser set uname = ? where id = 1;执行sql
else
;
为空的话什么都不做。
或者你可以这么写
sql=“update TieUser set 列=列”(这个列随便是哪个,是为了保持下面的条件都不执行也要有列,不然sql报错)
if(unameString!=null)
sql+=“ ,uname = ?”;
sql+=“ where id = 1”;
执行sql
追问
是这样的,因为我这里是举例,实际情况是需要set的参数值较多,而且外面传入的参数值也是没有规律的。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询