表定義の変更
ALTER TABLE
文を使用して、表定義に新規フィールドを追加するか、または現在存在しているフィールド定義を削除します。ALTER TABLE
文を使用して、表のデフォルトの存続時間(TTL)値を変更したり、IDENTITY列を表に追加することもできます。
ALTER TABLEのADDフィールド
既存の表にフィールドを追加するには、ADD
文を使用します。
ALTER TABLE table-name (ADD field-definition)
前述のfield-definitionsに記述される内容の説明は、「フィールド定義」を参照してください。次に例を示します。
ALTER TABLE Users (ADD age INTEGER)
ネストされたレコードにフィールドを追加することもできます。たとえば、次の表定義がある場合、
CREATE TABLE u (id INTEGER,
info record(firstName String)),
PRIMARY KEY(id))
次のように、ドット表記法を使用してネストされた表を識別し、ネストされたレコードにフィールドを追加できます。
ALTER TABLE u(ADD info.lastName STRING)
ALTER TABLEのDROPオプション
既存の表からフィールドを削除するには、DROP
オプションを使用します。
ALTER TABLE table-name (DROP field-name)
たとえば、Users
表からage
フィールドを削除するには次のようになります。
ALTER TABLE Users (DROP age)
ノート:
フィールドが主キーの場合、または索引に参加している場合は、削除できません。ALTER TABLE MODIFY FIELD
句を使用して、表内のIDENTITY列を追加、削除または変更することもできます。
ALTER TABLEのUSING TTL
既存の表のデフォルトの存続時間(TTL)値を変更するには、USING TTL
文を使用します。
ALTER TABLE table-name USING TTL ttl
次に例を示します。
ALTER TABLE Users USING TTL 4 days
MR表の場合、USING TTL
句はIN REGIONS
句とともに使用できません。つまり、MR表のTTL値およびリージョンを単一の文で変更できません。
USING TTL
文の詳細は、USING TTLを参照してください。
ALTER TABLE ADD REGIONS
add regions
句を使用すると、マルチリージョンのOracle NoSQL Database環境で既存の複数リージョン表(MR表)を新しいリージョンとリンクできます。
add regions
句は、MR表を新しいリージョンに拡張するときに使用されます。管理者ガイドのユースケース2: マルチリージョン表の拡張を参照してください。
ADD REGIONS
オプションを使用します。ALTER TABLE <table name> ADD REGIONS <comma separated list of regions>
サンプル・コードは、既存のリージョンへの新しいリージョンの追加を参照してください。
ALTER TABLE DROP REGIONS
drop regions
句を使用すると、マルチリージョンのOracle NoSQL Database環境で参加リージョンから既存の複数リージョン表(MR表)を切断できます。
drop regions
句は、MR表をより少ないリージョンに縮小するときに使用されます。管理者ガイドのユースケース3: 複数リージョン表の縮小を参照してください。
DROP REGIONS
オプションを使用します。ALTER TABLE <table name> DROP REGIONS <comma separated list of regions>
サンプル・コードは、リージョンを削除するためのMR表の変更を参照してください。