Parse教程二(Parse后台数据库的使用)

来源:互联网 发布:爱知日语培训班多少钱 编辑:程序博客网 时间:2024/05/17 22:41

1、怎么查看Parse的后台数据库

Parse作为这么优的秀后台管理工具,肯定会为我们提供后台数据库的功能。

点击你的App下面的Core就可以进入你的App的核心功能管理处。


我们可以看到这个界面


我们可以在这个界面对我们程序的后台数据进行管理。

2、怎么创建数据并将它保存到后台数据库

这段简单的代码就可以实现我们的功能。

ParseObject gameScore = new ParseObject("GameScore");gameScore.put("score", 1337);gameScore.put("playerName", "Sean Plott");gameScore.put("cheatMode", false);gameScore.saveInBackground();

是不是很方便啊。

第一行代码是新建一个ParseObject对象,并让它与数据库中“GameScore”表相关联。

第二行到第四行代码是向ParseObject对象里面添加数据,参数表的第一个参数是对应数据表的列名,第二个参数是我们想要保存到数据表对应列的数据。

第五行代码是将ParseObject对象保存到后台中,此时就是将这个数据保存到后台数据库中。

gameScore.saveInBackground()的功能讲解:

当gameScore中的不包含objectId字段数据时,是在后台数据库插入一条新的数据;

当gameScore中的包含objectId字段数据时,是在后台数据库更新这条数据。

不管gameScore中的包不包含objectId字段数据,只要执行了这个方法,之后gameScore就与后台数据库的数据完全一致。打个简单的比方,gameScore一开始不包含objectId字段数据,执行了这个方法后,就将数据保存到后台数据库并自动为它添加了objectId等字段,再在Android客户端使用gameScore时,它就已经包含objectId字段数据了。

我们在Android程序里面添加上这段代码,就可以实现创建数据并保存到后台数据库的功能。运行Android程序,如果我们添加的那段代码运行了,那么我们可以在我们后台数据库看到添加进GameScore数据表的数据。

3、怎么从后台数据库获取数据

如果我们知道某一条数据的objectId(Parse后台数据库所有数据表的主键都是objectId),就可以通过下面的代码获取这条数据。

ParseQuery<ParseObject> query = ParseQuery.getQuery("GameScore");query.getInBackground("xWMyZ4YEGZ", new GetCallback<ParseObject>() {  public void done(ParseObject object, ParseException e) {    if (e == null) {      // 这里的object就是我们需要的那一条数据    } else {      // something went wrong    }  }});

我们怎么从object获取某个字段的值,可以通过GetX方法。

int score = gameScore.getInt("score");String playerName = gameScore.getString("playerName");boolean cheatMode = gameScore.getBoolean("cheatMode");

对于某些特殊的字段,我们可以通过GetKey方法获得。

String objectId = gameScore.getObjectId();Date updatedAt = gameScore.getUpdatedAt();Date createdAt = gameScore.getCreatedAt();
PS:数据库的查询操作内容比较多,留到后面集中讲解。

4、怎么从后台数据库获取最新数据

假如你从后台获取了一条数据,之后后台的这条数据改变了,你要获取最新的数据怎么办,通过下面这段代码就可以实现了。

myObject.fetchInBackground(new GetCallback<ParseObject>() {  public void done(ParseObject object, ParseException e) {    if (e == null) {      // Success!    } else {      // Failure!    }  }});

PS:myObject必须包含objectId字段数据。

5、离线保存数据

我们用saveInBackground()方法保存数据时,必须是在我们的Android设备有网络的情况下才可以进行的,如果我现在没有网络但是我希望我一有网络就可以把数据保存在Parse后台数据库。我们可以通过saveEventually()方法实现,在离线时,我们通过saveEventually()方法保存的数据都会保存着,一旦我们有网络了,这些数据就按照先后顺序依次保存到Parse后台数据库中。

ParseObject gameScore = new ParseObject("GameScore");gameScore.put("score", 1337);gameScore.put("playerName", "Sean Plott");gameScore.put("cheatMode", false);gameScore.saveEventually();

6、怎么更新后台数据库的数据

其实更新后台数据库的数据也是通过saveInBackground()方法实现的,从前面我对saveInBackground()这个方法的讲解中,大家就可以知道。

ParseQuery<ParseObject> query = ParseQuery.getQuery("GameScore");// Retrieve the object by idquery.getInBackground("xWMyZ4YEGZ", new GetCallback<ParseObject>() {  public void done(ParseObject gameScore, ParseException e) {    if (e == null) {      // Now let's update it with some new data. In this case, only cheatMode and score      // will get sent to the Parse Cloud. playerName hasn't changed.      gameScore.put("score", 1338);      gameScore.put("cheatMode", true);      gameScore.saveInBackground();    }  }});

7、怎么删除后台数据库的数据

我们可以通过delete()方法实现。

gameScore.deleteInBackground()


1 0