我想使用activejdbc更新多个记录
Person.update("name = ?, last_name = ?", "name in ?", "Steve", "Johnson", "jagadeesh,varma,jampana,vikash");
没有错误,但是数据库中没有任何更新
答案 0 :(得分:1)
问题与in
子句有关。
根据{{3}}子句的要求,您传递的是“ jagadeesh,varma,jampana,vikash”而不是“('jagadeesh','varma','jampana','vikash')”
此解决方案应该可以解决您的问题:
Person.update("name = ?, last_name = ?", "name in ('jagadeesh','varma','jampana','vikash')", "Steve", "Johnson");
答案 1 :(得分:1)
这不是ActiveJDBC框架的问题,而是JDBC标准不支持的问题。请查看此页面以获取更多信息: http://javalite.io/in_clause
您需要连接字符串:
groupdf = coinc.groupby('id').agg(any)
# Selects instance where both contain at least one true statement
mask = maskdf[['temp1','temp2']].all(axis=1)
lanif = groupdf[mask].drop(['temp1','temp2'],axis = 1 )
不幸的是,如果您正在构建Web应用程序,这可能会引发SQL注入攻击的可能性-请务必小心。