Mysql 如何在将数据导入Parse.com时维护关系

Mysql 如何在将数据导入Parse.com时维护关系,mysql,parse-platform,Mysql,Parse Platform,我有一个数据库,我想导入Parse.com,但我很难理解数据应该如何存储在Parse中并维护这些数据之间的关系 这是我目前的数据和它们之间的关系 表1:视频 ->视频名称 ->网址 表2:表演者 ->性能名称 ->生物 表3:游戏 ->游戏名 ->游戏细节 表4:季节 ->季节名称 ->季节性细节 这些关系是: ->每个季节可以有多个视频,但每个视频只能与一个季节关联 ->每个视频可以有一个或多个游戏 ->每个视频可以有一个或多个表演者 ->每个游戏可以与一个或多个视频关联 ->每个游戏可以与一

我有一个数据库,我想导入Parse.com,但我很难理解数据应该如何存储在Parse中并维护这些数据之间的关系

这是我目前的数据和它们之间的关系

表1:视频

->视频名称

->网址

表2:表演者

->性能名称

->生物

表3:游戏

->游戏名

->游戏细节

表4:季节

->季节名称

->季节性细节

这些关系是:

->每个季节可以有多个视频,但每个视频只能与一个季节关联

->每个视频可以有一个或多个游戏

->每个视频可以有一个或多个表演者

->每个游戏可以与一个或多个视频关联

->每个游戏可以与一个或多个执行者关联

->每个表演者可以出现在一个或多个视频中

->每个表演者可以与一个或多个游戏关联

这意味着数据之间存在多对多关系

如果有人能帮助我了解如何解析关系数据库/信息,我将不胜感激。我已经阅读了关系数据文档,但我不完全理解它如何应用于我的数据

我希望能够将数据从数据库中导出并导入到Parse中。我愿意接受任何关于将这些数据用于解析和维护关系的建议

我需要这些关系,因为该应用程序将产生如下查询:

->检索performer=x的所有视频

->检索performer=x的所有游戏

->检索game=x的所有执行者

->检索季节=x的所有视频

根据需要加上其他人


我希望有人能帮忙。如果你能根据我上面的信息提供具体的例子,那就太好了!:-)

Parse以多种方式支持关系:

  • 指针(考虑外键ID)
  • 指针数组(考虑联接表,但仅当您始终希望获取所有指针时)
  • 关系(考虑要查询子集的联接表)
您使用什么在很大程度上取决于您的查询。就你的情况而言,我建议如下:

视频:

  • 名称(字符串)
  • URL(字符串)
  • 季节(指针)
  • 游戏(数组,假设这是一个短列表)
  • 表演者(阵列)
表演者:

  • 名称(字符串)
  • Bio(字符串,可能带有HTML或其他标记)
游戏:

  • 名称(字符串)
  • 细节(字符串)
  • 表演者(阵列)
季节:

  • 名称(字符串)
  • 细节(字符串)
对于您的查询(使用JavaScript,因为您没有指定语言):

有时您需要双向联接。可以在每一端手动填充数组/关系,也可以使用新对象保存关系(特别是当关系包含额外信息时)。例如:

游戏表演者:

  • 游戏(指针)
  • 表演者(指针)
  • 角色(字符串)
查询它并根据需要包含游戏/执行者:

var GamePerformers = Parse.Object.extend("GamePerformers");
var performersForGameQuery = new Parse.Query(GamePerformers);
performersForGameQuery.equalTo('game', gameX);
performersForGameQuery.include('performer');
performersForGameQuery.find({
    success: function(results) {
        for (var i = 0; i < results.length; i++) { 
            var object = results[i];
            console.log('Performer: ' 
                + object.get('performer').get('name') 
                + ' played role: ' 
                + object.get('role'));
        }
    }
});
var GamePerformers=Parse.Object.extend(“GamePerformers”);
var performersForGameQuery=新建Parse.Query(GamePerformers);
performersformeQuery.equalTo('game',gameX);
performersformeQuery.include('performer');
performersForGameQuery.find({
成功:功能(结果){
对于(var i=0;i
这个问题没有答案??您是否查阅了Parse.com文档(JS)?他们给出了一个很好的例子,你所问的就是这个例子。链接:链接2:
var GamePerformers = Parse.Object.extend("GamePerformers");
var performersForGameQuery = new Parse.Query(GamePerformers);
performersForGameQuery.equalTo('game', gameX);
performersForGameQuery.include('performer');
performersForGameQuery.find({
    success: function(results) {
        for (var i = 0; i < results.length; i++) { 
            var object = results[i];
            console.log('Performer: ' 
                + object.get('performer').get('name') 
                + ' played role: ' 
                + object.get('role'));
        }
    }
});