嗨,我想在apache ignite中创建一个表,该表中有两个外键(查询索引)。下面是查询。
CREATE TABLE `users_roles` (
`users_rolesId` bigint(20) unsigned NOT NULL,
`userId` bigint(20) ,
`roleId` bigint(20) ,
`createdOn` timestamp ,
`modifiedOn` timestamp,
`createdBy` bigint(20),
`modifiedBy` bigint(20),
`isActive` bit(1) ,
PRIMARY KEY (`users_rolesId`))WITH "backups=1,affinity_key=userId,affinity_key=roleId"
但是它给了我例外:
SQL Error [1001] [42000]: Duplicate parameter: affinity_key=roleId
所以如何在create语句中指定多个查询索引?。
这里有两个问题:
亲和力确定如何在节点之间分配数据。除非有两个不同的表,否则不能一次拥有两个关联。您将必须选择对您更重要的一个,并对另一个进行分布式联接。
根据您的情况,我建议复制角色表并在role_id
上删除关联键。