【发布时间】:2019-10-18 08:04:30
【问题描述】:
我正在使用 GRAND 堆栈 - neo4j 数据库和 apollo 服务器。还使用了 neo4j-graphql-js 的 augmentedSchema。这为 GraphQL 架构添加了更多类型和突变。
我有一个带有以下 typedef 的类型选项:
type Option {
id: ID
name: String
position: Int
values: [String]
}
使用由 neo4j-graphql-js 生成的 CreateOption 突变,我可以创建一个选项。我面临的问题是我可以创建多个具有相同 ID 的选项。
mutation {
opt1: CreateOption(id: 1, name: "Test") {
id
}
opt2: CreateOption(id: 1, name: "Test 2") {
id
}
}
上述突变的结果是
{
"data": {
"opt1": {
"id": "1"
},
"opt2": {
"id": "1"
}
}
}
为什么 neo4j 允许两个节点具有相同的 ID? Neo4j中如何确保节点具有唯一ID?
【问题讨论】: