W3Cschool
恭喜您成為首批注冊用戶
獲得88經(jīng)驗值獎勵
如果將B
類型的對象作為A
的屬性嵌入,則B
的列將與A
的列保存在同一Cloud Spanner表中。
如果B
具有主鍵列,則這些列將包含在A
的主鍵中。B
也可以具有嵌入式屬性。嵌入允許在多個實(shí)體之間重復(fù)使用列,并且對于實(shí)現(xiàn)父子情況非常有用,因為Cloud Spanner要求子表包括其父項的關(guān)鍵列。
例如:
class X { @PrimaryKey String grandParentId; long age; } class A { @PrimaryKey @Embedded X grandParent; @PrimaryKey(keyOrder = 2) String parentId; String value; } @Table(name = "items") class B { @PrimaryKey @Embedded A parent; @PrimaryKey(keyOrder = 2) String id; @Column(name = "child_value") String value; }
B
實(shí)體可以存儲在定義為的表中:
CREATE TABLE items ( grandParentId STRING(MAX), parentId STRING(MAX), id STRING(MAX), value STRING(MAX), child_value STRING(MAX), age INT64 ) PRIMARY KEY (grandParentId, parentId, id)
請注意,嵌入屬性的列名稱必須全部唯一。
Copyright©2021 w3cschool編程獅|閩ICP備15016281號-3|閩公網(wǎng)安備35020302033924號
違法和不良信息舉報電話:173-0602-2364|舉報郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號
聯(lián)系方式:
更多建議: