javascript - 反对 insertGraph,插入新的并关联或关联到现有行
问题描述
所以,我对 MySQL 关系、更新插入等不是超级知识。我正在寻找有关如何(如果?)这样做的解释。
[
{
scheduledAt: '17:55',
league: { name: 'Champions League - Group Stage' }
},
{
scheduled_at: '19:45',
league: { name: 'Champions League - Group Stage' }
},
{
scheduled_at: '19:30',
league: { name: 'Primera B Metropolitana' },
},
{
scheduled_at: '21:00',
league: { name: 'Primera B Metropolitana' }
}
]
假设我想插入这个数据图。根对象将进入fixtures
表中,league
属性是Fixtures
模型中的这种关系。
{
league: {
relation: Model.BelongsToOneRelation,
modelClass: `${__dirname}/League`,
join: {
from: 'fixtures.league_id',
to: 'leagues.id'
}
}
}
所以,目前如果我insertGraph
用来插入所有这些数据。它像您期望的那样插入到fixtures
和表中并关联。leagues
{
"scheduled_at": "17:55",
"league": {
"name": "Champions League - Group Stage",
"created_at": "2018-10-03T13:02:03.995Z",
"id": 1
},
"league_id": 1
"created_at": "2018-10-03T13:02:04.042Z",
"id": 1
}
但是,如果我插入完全相同的联赛对象,它只会创建另一个重复的联赛和夹具行,并具有下一个递增的 ID(在本例中为 2)。
是否可以查找是否存在具有该名称的联赛,然后使用该行/ID 作为league_id
,如下所示:
{
"scheduled_at": "17.55",
"league_id": 1
"created_at": "2018-10-03T13:02:04.042Z",
"id": 2
}
对不起,如果我已经解释了这个可怕的。但我对术语不太感兴趣,所以我不知道我真正想要做什么。我觉得这是一件超级容易的事情,但也许我的结构或方法是错误的。
解决方案
推荐阅读
- python - numpy 尝试读取多列二进制文件
- r - R Studio 在初始化时不崩溃。错误:传输过程中发生错误
- javascript - 是的 - setTimeout 后的异步验证
- elasticsearch - 如何编写在 Elasticsearch 中执行多项任务的搜索查询?
- android - Room Database 继承数据类
- powershell - 使用批处理或外壳替换子文件夹中的文件(如果存在)
- azure-devops - “kubeconfig”选项的 Azure Devops kubernetes 服务连接似乎不适用于 AAD openidconnect 集成 AKS 群集
- java - 我应该如何为 LinkedList 定义 contains() 命令?
- typescript - 为什么 VS Code 无法调试具有 TS 3.7.1-rc 语法支持的源代码?
- python - conda 将 cutadapt 的最新版本列为 2.6,但仅运行 cutadapt 2.4