我可以在 Google Spanner 中拥有多个具有相同父项的表吗
Can I have multiple tables with same parent in Google Spanner
我读到我们可以在 Google Spanner 中拥有最大 table 6 的交错深度,并且交错 table 只能有一个直接父级 table,但是可以我们有多个 table 具有相同的父级?
例如:
TableA (root)
TableB (INTERLEAVE IN PARENT TableA)
TableC (INTERLEAVE IN PARENT TableA)
是的,你可以。例如接受以下 DDL:
CREATE TABLE `PARENT` (
ID INT64 NOT NULL,
DESCRIPTION STRING(100) NOT NULL,
) PRIMARY KEY(ID);
CREATE TABLE CHILD1 (
ID INT64 NOT NULL,
CHILD1_ID INT64 NOT NULL,
CHILD1_DESCRIPTION STRING(100) NOT NULL,
) PRIMARY KEY(ID, CHILD1_ID),
INTERLEAVE IN PARENT `PARENT` ON DELETE NO ACTION;
CREATE TABLE CHILD2 (
ID INT64 NOT NULL,
CHILD2_ID INT64 NOT NULL,
CHILD2_DESCRIPTION STRING(100) NOT NULL,
) PRIMARY KEY(ID, CHILD2_ID),
INTERLEAVE IN PARENT `PARENT` ON DELETE NO ACTION
我读到我们可以在 Google Spanner 中拥有最大 table 6 的交错深度,并且交错 table 只能有一个直接父级 table,但是可以我们有多个 table 具有相同的父级?
例如:
TableA (root)
TableB (INTERLEAVE IN PARENT TableA)
TableC (INTERLEAVE IN PARENT TableA)
是的,你可以。例如接受以下 DDL:
CREATE TABLE `PARENT` (
ID INT64 NOT NULL,
DESCRIPTION STRING(100) NOT NULL,
) PRIMARY KEY(ID);
CREATE TABLE CHILD1 (
ID INT64 NOT NULL,
CHILD1_ID INT64 NOT NULL,
CHILD1_DESCRIPTION STRING(100) NOT NULL,
) PRIMARY KEY(ID, CHILD1_ID),
INTERLEAVE IN PARENT `PARENT` ON DELETE NO ACTION;
CREATE TABLE CHILD2 (
ID INT64 NOT NULL,
CHILD2_ID INT64 NOT NULL,
CHILD2_DESCRIPTION STRING(100) NOT NULL,
) PRIMARY KEY(ID, CHILD2_ID),
INTERLEAVE IN PARENT `PARENT` ON DELETE NO ACTION