有没有人知道是否有可能以编程方式一次清除Backeld表中的所有数据?我发现这篇文章展示了如何一次删除一个对象,但没有一次清除整个表:https://backendless.com/documentation/data/android/data_deleting_data_objects.htm
我想出了一个方法,但我不知道它的效率有多高。基本上,我有一个名为LocalPhoneNum的类,它构成了将保存在我的app表中的对象。该类包含userID、name和phone num。我查询表以查找具有特定电子邮件的用户(目前只有一个用户),然后在循环中使用foundContacts变量逐个删除每个对象。
String whereClause = "userEmailID = mark";
BackendlessDataQuery dataQuery = new BackendlessDataQuery();
dataQuery.setWhereClause( whereClause );
Backendless.Persistence.of(LocalPhoneNum.class).find(dataQuery, new AsyncCallback<BackendlessCollection<LocalPhoneNum>>(){
@Override
public void handleResponse( BackendlessCollection<LocalPhoneNum> foundContacts )
{
for (LocalPhoneNum temp : foundContacts.getData()){
Backendless.Persistence.of( LocalPhoneNum.class ).remove( temp, new AsyncCallback<Long>()
{
public void handleResponse( Long response )
{
Toast.makeText(getActivity(), "DELETED", Toast.LENGTH_LONG).show();
}
public void handleFault( BackendlessFault fault )
{
Toast.makeText(getActivity(), "NOT DELETED "+fault, Toast.LENGTH_LONG).show();
}
} );
}
如果有更好的解决方案,或者这个解决方案还不错,请告诉我。谢谢!
发布于 2016-07-27 03:36:07
对“where”查询使用"bulk delete“操作,如"objectId is not null":https://backendless.com/documentation/data/rest/data_deleting_data_objects.htm
https://stackoverflow.com/questions/38598360
复制相似问题