我需要为列中的所有行否定列的值.我试图使用以下查询,但它不更新任何行:
sqliteDatabase.rawquery("UPDATE "+ sql_table_name + " SET "+ Col_1 +" = " + "-"+Col_1 , null);
其中Col-1 = col_1,表中为整数类型.
–Twinks
解决方法:
您可以将列乘以-1
Update sql_table_name Set Col_1 = Col_1 * -1
请注意,您的查询格式适合我;
Update tPerson Set Age = -Age
如果我是你,我会创建一个字符串并将您的查询设置为,以便您可以检查它是否按预期设置:
String sql = "UPDATE "+ sql_table_name + " SET "+ Col_1 +" = " + "-" + Col_1; sqliteDatabase.rawquery(sql, null); //breakpoint here, and check sql var
您的sql_table_name中是否有空格?尝试将其包装在方括号中,也可能与列名相同.
编辑:
我建议将主键更新为否定,但要完成此 *** 作,您可以执行以下 *** 作:
SET IDENTITY_INSERT Person ON Insert Into Person ([ID], [name], [Age]) Select -[ID], [name], [Age] From Person SET IDENTITY_INSERT Person OFF
(但这会复制你的表,你可能想把数据推到临时表中) – 不过我认为这是一个可怕的解决方案.我试着找到一种方法来重构你的表模式,因此它不是主键.
总结以上是内存溢出为你收集整理的android – 需要在SQLite中更新列的值全部内容,希望文章能够帮你解决android – 需要在SQLite中更新列的值所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)