我想使用内容提供程序将整个列(比如第1列)的所有值替换为表的其他列(比如第2列)。我尝试了多个选项但无法找到正确的答案。我知道可以使用SET子句但是如何将SET子句与内容提供者一起使用? 表格如下:
String SOLUTION_CATEGORY_TABLE_CREATE = "CREATE TABLE " + Constants.DataBaseConstants.LOOK_SOLUTION_CATEGORY_TABLE+"("
+ Constants.DataBaseConstants.LOADER_ID+" NUMERIC AUTO_INCREMENT,"
+Constants.DataBaseConstants.SOLUTION_CODE+" CHAR(15) NOT NULL,"
+Constants.DataBaseConstants.CATEGORY_ID+" NUMERIC(6) NOT NULL,"
+Constants.DataBaseConstants.CATEGORY_NAME+" CHAR,"
+Constants.DataBaseConstants.DEFAULT_PRODUCTS+" CHAR,"
+Constants.DataBaseConstants.RECOMMENDED_PRODUCTS+" CHAR,"
+Constants.DataBaseConstants.LOCAL_DEFAULT+" CHAR,"
+"CONSTRAINT "+ Constants.DataBaseConstants.SOL_CAT_FK1+" FOREIGN KEY("+Constants.DataBaseConstants.SOLUTION_CODE+")REFERENCES "
+ Constants.DataBaseConstants.SOLUTION_TABLE+"("+Constants.DataBaseConstants.SOLUTION_CODE+"),"
+"CONSTRAINT "+ Constants.DataBaseConstants.SOL_CAT_FK2+" PRIMARY KEY ("
+Constants.DataBaseConstants.SOLUTION_CODE+","+Constants.DataBaseConstants.CATEGORY_ID+"))";
现在我想用默认产品列替换本地默认产品。
我知道更新查询应该如下所示:
UPDATE Constants.DataBaseConstants.LOOK_SOLUTION_CATEGORY_TABLE SET Constants.DataBaseConstants.LOCAL_DEFAULT=Constants.DataBaseConstants.DEFAULT_PRODUCTS;
但我不知道如何使用内容提供商进行相同的查询。 我应该在update方法的参数中发送什么(如下所述),以便结束查询与上面相同。
getContentResolver().update(DataProvider.CONTENT_URI_LOOK_SOLUTION_CATEGORY, values, selection, args);
提前感谢。