> ## Documentation Index
> Fetch the complete documentation index at: https://docs.kinetica.com/llms.txt
> Use this file to discover all available pages before exploring further.

# AlterTableRequest

> AlterTableRequest — Kinetica Java API

<div className="kinetica-javadoc">
  <div className="header">
    <div className="sub-title"><span className="package-label-in-type">Package</span> <a href="/content/api/java/com/gpudb/protocol/package-summary">com.gpudb.protocol</a></div>
    <h1 title="Class AlterTableRequest" className="title">Class AlterTableRequest</h1>
  </div>

  <div className="inheritance" title="Inheritance Tree">
    <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" className="external-link">java.lang.Object</a>
    <div className="inheritance">com.gpudb.protocol.AlterTableRequest</div>
  </div>

  <div className="section class-description" id="class-description">
    <div className="dl notes">
      <div className="dt">All Implemented Interfaces:</div>
      <div className="dd"><code>org.apache.avro.generic.GenericContainer</code>, <code>org.apache.avro.generic.IndexedRecord</code></div>
    </div>

    <hr />

    <div className="type-signature"><span className="modifiers">public class </span><span className="element-name type-name-label">AlterTableRequest</span> <span className="extends-implements">extends <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" className="external-link">Object</a> implements org.apache.avro.generic.IndexedRecord</span></div>

    <div className="block">
      A set of parameters for <a href="/content/api/java/com/gpudb/GPUdb#alterTable(com.gpudb.protocol.AlterTableRequest)"><code>GPUdb.alterTable</code></a>.
      <p> Apply various modifications to a table or view. The available modifications include the following: </p>
      <p> Manage a table's columns--a column can be added, removed, or have its <a href="/content/concepts/types/" target="_top">type and properties</a> modified, including whether it is <a href="/content/concepts/dictionary_encoding/" target="_top">dictionary encoded</a> or not. </p>
      <p> External tables cannot be modified except for their refresh method. </p>
      <p> Create or delete a <a href="/content/concepts/indexes/#column-index" target="_top">column</a>, <a href="/content/concepts/indexes/#low-cardinality-index" target="_top">low-cardinality index</a>, <a href="/content/concepts/indexes/#chunk-skip-index" target="_top">chunk skip</a>, <a href="/content/concepts/indexes/#geospatial-index" target="_top">geospatial</a>, <a href="/content/concepts/indexes/#cagra-index" target="_top">CAGRA</a>, or <a href="/content/concepts/indexes/#hnsw-index" target="_top">HNSW</a> index. This can speed up certain operations when using expressions containing equality or relational operators on indexed columns. This only applies to tables. </p>
      <p> Create or delete a <a href="/content/concepts/tables/#foreign-key" target="_top">foreign key</a> on a particular column. </p>
      <p> Manage a <a href="/content/concepts/tables/#partitioning-by-range" target="_top">range-partitioned</a> or a <a href="/content/concepts/tables/#partitioning-by-list-manual" target="_top">manual list-partitioned</a> table's partitions. </p>
      <p> Set (or reset) the <a href="/content/rm/concepts/#tier-strategies" target="_top">tier strategy</a> of a table or view. </p>
      <p> Refresh and manage the refresh mode of a <a href="/content/concepts/materialized_views/" target="_top">materialized view</a> or an <a href="/content/concepts/external_tables/" target="_top">external table</a>. </p>
      <p> Set the <a href="/content/concepts/ttl/" target="_top">time-to-live (TTL)</a>. This can be applied to tables or views. </p>
      <p> Set the global access mode (i.e. locking) for a table. This setting trumps any role-based access controls that may be in place; e.g., a user with write access to a table marked read-only will not be able to insert records into it. The mode can be set to read-only, write-only, read/write, and no access.</p>
    </div>
  </div>

  <div className="section summary">
    <ul className="summary-list">
      <li>
        <div className="section nested-class-summary" id="nested-class-summary">
          <h2>Nested Class Summary</h2>
          <div className="caption"><span>Nested Classes</span></div>

          <div className="summary-table three-column-summary">
            <div className="table-header col-first">Modifier and Type</div>
            <div className="table-header col-second">Class</div>
            <div className="table-header col-last">Description</div>
            <div className="col-first even-row-color"><code>static final class </code></div>
            <div className="col-second even-row-color"><code><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action" className="type-name-link" title="class in com.gpudb.protocol">AlterTableRequest.Action</a></code></div>

            <div className="col-last even-row-color">
              <div className="block">A set of string constants for the <a href="/content/api/java/com/gpudb/protocol/AlterTableRequest" title="class in com.gpudb.protocol"><code>AlterTableRequest</code></a> parameter <a href="#getAction()"><code>action</code></a>.</div>
            </div>

            <div className="col-first odd-row-color"><code>static final class </code></div>
            <div className="col-second odd-row-color"><code><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Options" className="type-name-link" title="class in com.gpudb.protocol">AlterTableRequest.Options</a></code></div>

            <div className="col-last odd-row-color">
              <div className="block">A set of string constants for the <a href="/content/api/java/com/gpudb/protocol/AlterTableRequest" title="class in com.gpudb.protocol"><code>AlterTableRequest</code></a> parameter <a href="#getOptions()"><code>options</code></a>.</div>
            </div>
          </div>
        </div>
      </li>

      <li>
        <div className="section constructor-summary" id="constructor-summary">
          <h2>Constructor Summary</h2>
          <div className="caption"><span>Constructors</span></div>

          <div className="summary-table two-column-summary">
            <div className="table-header col-first">Constructor</div>
            <div className="table-header col-last">Description</div>
            <div className="col-constructor-name even-row-color"><code><a href="#%3Cinit%3E()" className="member-name-link">AlterTableRequest</a>()</code></div>

            <div className="col-last even-row-color">
              <div className="block">Constructs an AlterTableRequest object with default parameters.</div>
            </div>

            <div className="col-constructor-name odd-row-color"><code><a href="#%3Cinit%3E(java.lang.String,java.lang.String,java.lang.String,java.util.Map)" className="member-name-link">AlterTableRequest</a><wbr />(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" className="external-link">String</a> tableName, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" className="external-link">String</a> action, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" className="external-link">String</a> value, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/Map.html" title="class or interface in java.util" className="external-link">Map</a>\<<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" className="external-link">String</a>,<wbr /><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" className="external-link">String</a>> options)</code></div>

            <div className="col-last odd-row-color">
              <div className="block">Constructs an AlterTableRequest object with the specified parameters.</div>
            </div>
          </div>
        </div>
      </li>

      <li>
        <div className="section method-summary" id="method-summary">
          <h2>Method Summary</h2>

          <div id="method-summary-table">
            <div className="table-tabs" role="tablist" aria-orientation="horizontal"><button id="method-summary-table-tab0" role="tab" aria-selected="true" aria-controls="method-summary-table.tabpanel" tabIndex="0" className="active-table-tab">All Methods</button><button id="method-summary-table-tab1" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabIndex="-1" className="table-tab">Static Methods</button><button id="method-summary-table-tab2" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabIndex="-1" className="table-tab">Instance Methods</button><button id="method-summary-table-tab4" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabIndex="-1" className="table-tab">Concrete Methods</button></div>

            <div id="method-summary-table.tabpanel" role="tabpanel" aria-labelledby="method-summary-table-tab0">
              <div className="summary-table three-column-summary">
                <div className="table-header col-first">Modifier and Type</div>
                <div className="table-header col-second">Method</div>
                <div className="table-header col-last">Description</div>
                <div className="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
                <div className="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#equals(java.lang.Object)" className="member-name-link">equals</a><wbr />(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" className="external-link">Object</a> obj)</code></div>
                <div className="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> </div>
                <div className="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" className="external-link">Object</a></code></div>
                <div className="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#get(int)" className="member-name-link">get</a><wbr />(int index)</code></div>

                <div className="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
                  <div className="block">This method supports the Avro framework and is not intended to be called directly by the user.</div>
                </div>

                <div className="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" className="external-link">String</a></code></div>
                <div className="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getAction()" className="member-name-link">getAction</a>()</code></div>

                <div className="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
                  <div className="block">Modification operation to be applied.</div>
                </div>

                <div className="col-first odd-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code>static org.apache.avro.Schema</code></div>
                <div className="col-second odd-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code><a href="#getClassSchema()" className="member-name-link">getClassSchema</a>()</code></div>

                <div className="col-last odd-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4">
                  <div className="block">This method supports the Avro framework and is not intended to be called directly by the user.</div>
                </div>

                <div className="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/Map.html" title="class or interface in java.util" className="external-link">Map</a><wbr />\<<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" className="external-link">String</a>,<wbr /><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" className="external-link">String</a>></code></div>
                <div className="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getOptions()" className="member-name-link">getOptions</a>()</code></div>

                <div className="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
                  <div className="block">Optional parameters.</div>
                </div>

                <div className="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>org.apache.avro.Schema</code></div>
                <div className="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getSchema()" className="member-name-link">getSchema</a>()</code></div>

                <div className="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
                  <div className="block">This method supports the Avro framework and is not intended to be called directly by the user.</div>
                </div>

                <div className="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" className="external-link">String</a></code></div>
                <div className="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getTableName()" className="member-name-link">getTableName</a>()</code></div>

                <div className="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
                  <div className="block">Table on which the operation will be performed, in \[schema\_name.]table\_name format, using standard <a href="/content/concepts/tables/#table-name-resolution" target="_top">name resolution rules</a>.</div>
                </div>

                <div className="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" className="external-link">String</a></code></div>
                <div className="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getValue()" className="member-name-link">getValue</a>()</code></div>

                <div className="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
                  <div className="block">The value of the modification, depending on <a href="#getAction()"><code>action</code></a>.</div>
                </div>

                <div className="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>int</code></div>
                <div className="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hashCode()" className="member-name-link">hashCode</a>()</code></div>
                <div className="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> </div>
                <div className="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div>
                <div className="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#put(int,java.lang.Object)" className="member-name-link">put</a><wbr />(int index, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" className="external-link">Object</a> value)</code></div>

                <div className="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
                  <div className="block">This method supports the Avro framework and is not intended to be called directly by the user.</div>
                </div>

                <div className="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest" title="class in com.gpudb.protocol">AlterTableRequest</a></code></div>
                <div className="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#setAction(java.lang.String)" className="member-name-link">setAction</a><wbr />(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" className="external-link">String</a> action)</code></div>

                <div className="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
                  <div className="block">Modification operation to be applied.</div>
                </div>

                <div className="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest" title="class in com.gpudb.protocol">AlterTableRequest</a></code></div>
                <div className="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#setOptions(java.util.Map)" className="member-name-link">setOptions</a><wbr />(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/Map.html" title="class or interface in java.util" className="external-link">Map</a>\<<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" className="external-link">String</a>,<wbr /><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" className="external-link">String</a>> options)</code></div>

                <div className="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
                  <div className="block">Optional parameters.</div>
                </div>

                <div className="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest" title="class in com.gpudb.protocol">AlterTableRequest</a></code></div>
                <div className="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#setTableName(java.lang.String)" className="member-name-link">setTableName</a><wbr />(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" className="external-link">String</a> tableName)</code></div>

                <div className="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
                  <div className="block">Table on which the operation will be performed, in \[schema\_name.]table\_name format, using standard <a href="/content/concepts/tables/#table-name-resolution" target="_top">name resolution rules</a>.</div>
                </div>

                <div className="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest" title="class in com.gpudb.protocol">AlterTableRequest</a></code></div>
                <div className="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#setValue(java.lang.String)" className="member-name-link">setValue</a><wbr />(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" className="external-link">String</a> value)</code></div>

                <div className="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
                  <div className="block">The value of the modification, depending on <a href="#getAction()"><code>action</code></a>.</div>
                </div>

                <div className="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" className="external-link">String</a></code></div>
                <div className="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#toString()" className="member-name-link">toString</a>()</code></div>
                <div className="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> </div>
              </div>
            </div>
          </div>

          <div className="inherited-list">
            <h3 id="methods-inherited-from-class-java.lang.Object">Methods inherited from class java.lang.<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" className="external-link">Object</a></h3>
            <code><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html#clone()" title="class or interface in java.lang" className="external-link">clone</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html#finalize()" title="class or interface in java.lang" className="external-link">finalize</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html#getClass()" title="class or interface in java.lang" className="external-link">getClass</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html#notify()" title="class or interface in java.lang" className="external-link">notify</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html#notifyAll()" title="class or interface in java.lang" className="external-link">notifyAll</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html#wait()" title="class or interface in java.lang" className="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html#wait(long)" title="class or interface in java.lang" className="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html#wait(long,int)" title="class or interface in java.lang" className="external-link">wait</a></code>
          </div>
        </div>
      </li>
    </ul>
  </div>

  <div className="section details">
    <ul className="details-list">
      <li>
        <div className="section constructor-details" id="constructor-detail">
          <h2>Constructor Details</h2>

          <ul className="member-list">
            <li>
              <div className="section detail" id="<init>()">
                <h3>AlterTableRequest</h3>
                <div className="member-signature"><span className="modifiers">public</span> <span className="element-name">AlterTableRequest</span>()</div>
                <div className="block">Constructs an AlterTableRequest object with default parameters.</div>
              </div>
            </li>

            <li>
              <div className="section detail" id="<init>(java.lang.String,java.lang.String,java.lang.String,java.util.Map)">
                <h3>AlterTableRequest</h3>
                <div className="member-signature"><span className="modifiers">public</span> <span className="element-name">AlterTableRequest</span><wbr /><span className="parameters">(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" className="external-link">String</a> tableName, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" className="external-link">String</a> action, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" className="external-link">String</a> value, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/Map.html" title="class or interface in java.util" className="external-link">Map</a>\<<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" className="external-link">String</a>,<wbr /><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" className="external-link">String</a>> options)</span></div>
                <div className="block">Constructs an AlterTableRequest object with the specified parameters.</div>

                <div className="dl notes">
                  <div className="dt">Parameters:</div>
                  <div className="dd"><code>tableName</code> - Table on which the operation will be performed, in \[schema\_name.]table\_name format, using standard <a href="/content/concepts/tables/#table-name-resolution" target="_top">name resolution rules</a>. Must be an existing table or view.</div>

                  <div className="dd">
                    <code>action</code> - Modification operation to be applied. Supported values:

                    <ul>
                      <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#CREATE_INDEX"><code>CREATE\_INDEX</code></a>: Creates a <a href="/content/concepts/indexes/#column-index" target="_top">column (attribute) index</a>, <a href="/content/concepts/indexes/#low-cardinality-index" target="_top">low-cardinality index</a>, <a href="/content/concepts/indexes/#chunk-skip-index" target="_top">chunk skip index</a>, <a href="/content/concepts/indexes/#geospatial-index" target="_top">geospatial index</a>, <a href="/content/concepts/indexes/#cagra-index" target="_top">CAGRA index</a>, or <a href="/content/concepts/indexes/#hnsw-index" target="_top">HNSW index</a> (depending on the specified <a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Options#INDEX_TYPE"><code>INDEX\_TYPE</code></a>), on the column name specified in <code>value</code>. If this column already has the specified index, an error will be returned. </li>
                      <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#REFRESH_INDEX"><code>REFRESH\_INDEX</code></a>: Refreshes an index identified by <a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Options#INDEX_TYPE"><code>INDEX\_TYPE</code></a>, on the column name specified in <code>value</code>. Currently applicable only to CAGRA indices. </li>
                      <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#DELETE_INDEX"><code>DELETE\_INDEX</code></a>: Deletes a <a href="/content/concepts/indexes/#column-index" target="_top">column (attribute) index</a>, <a href="/content/concepts/indexes/#low-cardinality-index" target="_top">low-cardinality index</a>, <a href="/content/concepts/indexes/#chunk-skip-index" target="_top">chunk skip index</a>, <a href="/content/concepts/indexes/#geospatial-index" target="_top">geospatial index</a>, <a href="/content/concepts/indexes/#cagra-index" target="_top">CAGRA index</a>, or <a href="/content/concepts/indexes/#hnsw-index" target="_top">HNSW index</a> (depending on the specified <a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Options#INDEX_TYPE"><code>INDEX\_TYPE</code></a>), on the column name specified in <code>value</code>. If this column does not have the specified index, an error will be returned. </li>
                      <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#MOVE_TO_COLLECTION"><code>MOVE\_TO\_COLLECTION</code></a>: \[DEPRECATED--please use <a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#MOVE_TO_SCHEMA"><code>MOVE\_TO\_SCHEMA</code></a> and use <a href="/content/api/java/com/gpudb/GPUdb#createSchema(com.gpudb.protocol.CreateSchemaRequest)"><code>GPUdb.createSchema</code></a> to create the schema if non-existent] Moves a table or view into a schema named <code>value</code>. If the schema provided is non-existent, it will be automatically created. </li>
                      <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#MOVE_TO_SCHEMA"><code>MOVE\_TO\_SCHEMA</code></a>: Moves a table or view into a schema named <code> value</code>. If the schema provided is nonexistent, an error will be thrown. If <code>value</code> is empty, then the table or view will be placed in the user's default schema. </li>
                      <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#PROTECTED"><code>PROTECTED</code></a>: No longer used. Previously set whether the given <code> tableName</code> should be protected or not. The <code> value</code> would have been either 'true' or 'false'. </li>
                      <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#RENAME_TABLE"><code>RENAME\_TABLE</code></a>: Renames a table or view to <code>value</code>. Has the same naming restrictions as <a href="/content/concepts/tables/" target="_top">tables</a>. </li>
                      <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#TTL"><code>TTL</code></a>: Sets the <a href="/content/concepts/ttl/" target="_top">time-to-live</a> in minutes of the table or view specified in <code>tableName</code>. </li>
                      <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#ADD_COMMENT"><code>ADD\_COMMENT</code></a>: Adds the comment specified in <code>value</code> to the table specified in <code>tableName</code>. Use <a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Options#COLUMN_NAME"><code>COLUMN\_NAME</code></a> to set the comment for a column. </li>
                      <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#ADD_COLUMN"><code>ADD\_COLUMN</code></a>: Adds the column specified in <code>value</code> to the table specified in <code>tableName</code>. Use <a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Options#COLUMN_TYPE"><code>COLUMN\_TYPE</code></a> and <a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Options#COLUMN_PROPERTIES"><code>COLUMN\_PROPERTIES</code></a> in <code>options</code> to set the column's type and properties, respectively. </li>
                      <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#CHANGE_COLUMN"><code>CHANGE\_COLUMN</code></a>: Changes type and properties of the column specified in <code>value</code>. Use <a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Options#COLUMN_TYPE"><code>COLUMN\_TYPE</code></a> and <a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Options#COLUMN_PROPERTIES"><code>COLUMN\_PROPERTIES</code></a> in <code>options</code> to set the column's type and properties, respectively. Note that primary key and/or shard key columns cannot be changed. All unchanging column properties must be listed for the change to take place, e.g., to add dictionary encoding to an existing 'char4' column, both 'char4' and 'dict' must be specified in the <code>options</code> map. </li>
                      <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#DELETE_COLUMN"><code>DELETE\_COLUMN</code></a>: Deletes the column specified in <code>value</code> from the table specified in <code>tableName</code>. </li>
                      <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#SET_DEFAULT"><code>SET\_DEFAULT</code></a>: Sets or replaces the default value expression for the column specified in <code>value</code>. The new default is taken from <a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Options#ADD_COLUMN_EXPRESSION"><code>ADD\_COLUMN\_EXPRESSION</code></a>. Existing properties on the column are preserved. </li>
                      <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#DELETE_DEFAULT"><code>DELETE\_DEFAULT</code></a>: Removes the default value expression from the column specified in <code>value</code>. Other column properties are preserved. </li>
                      <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#CREATE_FOREIGN_KEY"><code>CREATE\_FOREIGN\_KEY</code></a>: Creates a <a href="/content/concepts/tables/#foreign-key" target="_top">foreign key</a> specified in <code> value</code> using the format '(source\_column\_name \[, ...]) references target\_table\_name(primary\_key\_column\_name \[, ...]) \[as foreign\_key\_name]'. </li>
                      <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#DELETE_FOREIGN_KEY"><code>DELETE\_FOREIGN\_KEY</code></a>: Deletes a <a href="/content/concepts/tables/#foreign-key" target="_top">foreign key</a>. The <code>value</code> should be the foreign\_key\_name specified when creating the key or the complete string used to define it. </li>
                      <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#ADD_PARTITION"><code>ADD\_PARTITION</code></a>: Adds the partition specified in <code>value</code>, to either a <a href="/content/concepts/tables/#partitioning-by-range" target="_top">range-partitioned</a> or <a href="/content/concepts/tables/#partitioning-by-list-manual" target="_top">manual list-partitioned</a> table. </li>
                      <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#REMOVE_PARTITION"><code>REMOVE\_PARTITION</code></a>: Removes the partition specified in <code>value</code> (and relocates all of its data to the default partition) from either a <a href="/content/concepts/tables/#partitioning-by-range" target="_top">range-partitioned</a> or <a href="/content/concepts/tables/#partitioning-by-list-manual" target="_top">manual list-partitioned</a> table. </li>
                      <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#DELETE_PARTITION"><code>DELETE\_PARTITION</code></a>: Deletes the partition specified in <code>value</code> (and all of its data) from either a <a href="/content/concepts/tables/#partitioning-by-range" target="_top">range-partitioned</a> or <a href="/content/concepts/tables/#partitioning-by-list-manual" target="_top">manual list-partitioned</a> table. </li>
                      <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#SET_GLOBAL_ACCESS_MODE"><code>SET\_GLOBAL\_ACCESS\_MODE</code></a>: Sets the global access mode (i.e. locking) for the table specified in <code>tableName</code>. Specify the access mode in <code>value</code>. Valid modes are 'no\_access', 'read\_only', 'write\_only' and 'read\_write'. </li>
                      <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#REFRESH"><code>REFRESH</code></a>: For a <a href="/content/concepts/materialized_views/" target="_top">materialized view</a>, replays all the table creation commands required to create the view. For an <a href="/content/concepts/external_tables/" target="_top">external table</a>, reloads all data in the table from its associated source files or <a href="/content/concepts/data_sources/" target="_top">data source</a>. </li>
                      <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#SET_REFRESH_METHOD"><code>SET\_REFRESH\_METHOD</code></a>: For a <a href="/content/concepts/materialized_views/" target="_top">materialized view</a>, sets the method by which the view is refreshed to the method specified in <code>value</code> - one of 'manual', 'periodic', or 'on\_change'. For an <a href="/content/concepts/external_tables/" target="_top">external table</a>, sets the method by which the table is refreshed to the method specified in <code>value</code> - either 'manual' or 'on\_start'. </li>
                      <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#SET_REFRESH_START_TIME"><code>SET\_REFRESH\_START\_TIME</code></a>: Sets the time to start periodic refreshes of this <a href="/content/concepts/materialized_views/" target="_top">materialized view</a> to the datetime string specified in <code>value</code> with format 'YYYY-MM-DD HH:MM:SS'. Subsequent refreshes occur at the specified time + N \* the refresh period. </li>
                      <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#SET_REFRESH_STOP_TIME"><code>SET\_REFRESH\_STOP\_TIME</code></a>: Sets the time to stop periodic refreshes of this <a href="/content/concepts/materialized_views/" target="_top">materialized view</a> to the datetime string specified in <code>value</code> with format 'YYYY-MM-DD HH:MM:SS'. </li>
                      <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#SET_REFRESH_PERIOD"><code>SET\_REFRESH\_PERIOD</code></a>: Sets the time interval in seconds at which to refresh this <a href="/content/concepts/materialized_views/" target="_top">materialized view</a> to the value specified in <code>value</code>. Also, sets the refresh method to periodic if not already set. </li>
                      <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#SET_REFRESH_SPAN"><code>SET\_REFRESH\_SPAN</code></a>: Sets the future time-offset(in seconds) for the view refresh to stop. </li>
                      <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#SET_REFRESH_EXECUTE_AS"><code>SET\_REFRESH\_EXECUTE\_AS</code></a>: Sets the user name to refresh this <a href="/content/concepts/materialized_views/" target="_top">materialized view</a> to the value specified in <code>value</code>. </li>
                      <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#REMOVE_TEXT_SEARCH_ATTRIBUTES"><code>REMOVE\_TEXT\_SEARCH\_ATTRIBUTES</code></a>: Removes <a href="/content/concepts/full_text_search/" target="_top">text search</a> attribute from all columns. </li>
                      <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#REMOVE_SHARD_KEYS"><code>REMOVE\_SHARD\_KEYS</code></a>: Removes the shard key property from all columns, so that the table will be considered randomly sharded. The data is not moved. The <code>value</code> is ignored. </li>
                      <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#SET_STRATEGY_DEFINITION"><code>SET\_STRATEGY\_DEFINITION</code></a>: Sets the <a href="/content/rm/concepts/#tier-strategies" target="_top">tier strategy</a> for the table and its columns to the one specified in <code> value</code>, replacing the existing tier strategy in its entirety. </li>
                      <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#CANCEL_DATASOURCE_SUBSCRIPTION"><code>CANCEL\_DATASOURCE\_SUBSCRIPTION</code></a>: Permanently unsubscribe a data source that is loading continuously as a stream. The data source can be Kafka / S3 / Azure / GCS. </li>
                      <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#DROP_DATASOURCE_SUBSCRIPTION"><code>DROP\_DATASOURCE\_SUBSCRIPTION</code></a>: Permanently delete a cancelled data source subscription. </li>
                      <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#PAUSE_DATASOURCE_SUBSCRIPTION"><code>PAUSE\_DATASOURCE\_SUBSCRIPTION</code></a>: Temporarily unsubscribe a data source that is loading continuously as a stream. The data source can be Kafka / S3 / Azure / GCS. </li>
                      <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#RESUME_DATASOURCE_SUBSCRIPTION"><code>RESUME\_DATASOURCE\_SUBSCRIPTION</code></a>: Resubscribe to a paused data source subscription. The data source can be Kafka / S3 / Azure / GCS. </li>
                      <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#CHANGE_OWNER"><code>CHANGE\_OWNER</code></a>: Change the owner resource group of the table. </li>
                      <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#SET_LOAD_VECTORS_POLICY"><code>SET\_LOAD\_VECTORS\_POLICY</code></a>: Set startup data loading scheme for the table; see description of 'load\_vectors\_policy' in <a href="/content/api/java/com/gpudb/GPUdb#createTable(com.gpudb.protocol.CreateTableRequest)"><code>GPUdb.createTable</code></a> for possible values for <code> value</code>. </li>
                      <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#SET_BUILD_PK_INDEX_POLICY"><code>SET\_BUILD\_PK\_INDEX\_POLICY</code></a>: Set startup primary key generation scheme for the table; see description of 'build\_pk\_index\_policy' in <a href="/content/api/java/com/gpudb/GPUdb#createTable(com.gpudb.protocol.CreateTableRequest)"><code>GPUdb.createTable</code></a> for possible values for <code> value</code>. </li>
                      <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#SET_BUILD_MATERIALIZED_VIEW_POLICY"><code>SET\_BUILD\_MATERIALIZED\_VIEW\_POLICY</code></a>: Set startup rebuilding scheme for the materialized view; see description of 'build\_materialized\_view\_policy' in <a href="/content/api/java/com/gpudb/GPUdb#createMaterializedView(com.gpudb.protocol.CreateMaterializedViewRequest)"><code>GPUdb.createMaterializedView</code></a> for possible values for <code>value</code>. </li>
                    </ul>
                  </div>

                  <div className="dd"><code>value</code> - The value of the modification, depending on <code> action</code>. For example, if <code>action</code> is <a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#ADD_COLUMN"><code>ADD\_COLUMN</code></a>, this would be the column name; while the column's definition would be covered by the <a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Options#COLUMN_TYPE"><code>COLUMN\_TYPE</code></a>, <a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Options#COLUMN_PROPERTIES"><code>COLUMN\_PROPERTIES</code></a>, <a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Options#COLUMN_DEFAULT_VALUE"><code>COLUMN\_DEFAULT\_VALUE</code></a>, and <a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Options#ADD_COLUMN_EXPRESSION"><code>ADD\_COLUMN\_EXPRESSION</code></a> in <code>options</code>. If <code> action</code> is <a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#TTL"><code>TTL</code></a>, it would be the number of minutes for the new TTL. If <code>action</code> is <a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#REFRESH"><code>REFRESH</code></a>, this field would be blank.</div>

                  <div className="dd">
                    <code>options</code> - Optional parameters.

                    <ul>
                      <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Options#ACTION"><code>ACTION</code></a> </li>
                      <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Options#COLUMN_NAME"><code>COLUMN\_NAME</code></a> </li>
                      <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Options#TABLE_NAME"><code>TABLE\_NAME</code></a> </li>
                      <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Options#COLUMN_DEFAULT_VALUE"><code>COLUMN\_DEFAULT\_VALUE</code></a>: When adding a column, set a literal default value for existing records. For nullable columns, the default value will be null, regardless of data type. Also persisted as the column's default for future inserts that omit the column. </li>
                      <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Options#COLUMN_PROPERTIES"><code>COLUMN\_PROPERTIES</code></a>: When adding or changing a column, set the column properties (strings, separated by a comma: data, text\_search, char8, int8 etc). </li>
                      <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Options#COLUMN_TYPE"><code>COLUMN\_TYPE</code></a>: When adding or changing a column, set the column type (strings, separated by a comma: int, double, string, null etc). </li>
                      <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Options#COPY_VALUES_FROM_COLUMN"><code>COPY\_VALUES\_FROM\_COLUMN</code></a>: \[DEPRECATED] Please use <a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Options#ADD_COLUMN_EXPRESSION"><code>ADD\_COLUMN\_EXPRESSION</code></a> instead. </li>
                      <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Options#RENAME_COLUMN"><code>RENAME\_COLUMN</code></a>: When changing a column, specify new column name. </li>

                      <li>
                        <a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Options#VALIDATE_CHANGE_COLUMN"><code>VALIDATE\_CHANGE\_COLUMN</code></a>: When changing a column, validate the change before applying it (or not). Supported values:

                        <ul>
                          <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Options#TRUE"><code>TRUE</code></a>: Validate all values. A value too large (or too long) for the new type will prevent any change. </li>
                          <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Options#FALSE"><code>FALSE</code></a>: When a value is too large or long, it will be truncated. </li>
                        </ul>

                        The default value is <a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Options#TRUE"><code>TRUE</code></a>.
                      </li>

                      <li>
                        <a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Options#UPDATE_LAST_ACCESS_TIME"><code>UPDATE\_LAST\_ACCESS\_TIME</code></a>: Indicates whether the <a href="/content/concepts/ttl/" target="_top">time-to-live</a> (TTL) expiration countdown timer should be reset to the table's TTL. Supported values:

                        <ul>
                          <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Options#TRUE"><code>TRUE</code></a>: Reset the expiration countdown timer to the table's configured TTL. </li>
                          <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Options#FALSE"><code>FALSE</code></a>: Don't reset the timer; expiration countdown will continue from where it is, as if the table had not been accessed. </li>
                        </ul>

                        The default value is <a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Options#TRUE"><code>TRUE</code></a>.
                      </li>

                      <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Options#ADD_COLUMN_EXPRESSION"><code>ADD\_COLUMN\_EXPRESSION</code></a>: When adding a column or setting a new default with <code>action</code> set to <a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#SET_DEFAULT"><code>SET\_DEFAULT</code></a>, the new default expression (GPUdb-syntax) for the column. Any valid expression may be used, including one containing references to existing columns in the same table. Persisted as the column's default for future inserts that omit the column; for add\_column, also used to backfill existing rows. </li>
                      <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Options#ADD_COLUMN_EXPRESSION_SQL"><code>ADD\_COLUMN\_EXPRESSION\_SQL</code></a>: Optional SQL-syntax form of <a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Options#ADD_COLUMN_EXPRESSION"><code>ADD\_COLUMN\_EXPRESSION</code></a>, used only when the SQL syntax differs from the GPUdb syntax. Persisted alongside the GPUdb form so SHOW CREATE TABLE / information\_schema can reproduce the original SQL. </li>
                      <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Options#STRATEGY_DEFINITION"><code>STRATEGY\_DEFINITION</code></a>: Parameter for specifying the <a href="/content/rm/concepts/#tier-strategies" target="_top">tier strategy</a> for the table and its columns when <code>action</code> is <a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#SET_STRATEGY_DEFINITION"><code>SET\_STRATEGY\_DEFINITION</code></a>, replacing the existing tier strategy in its entirety. </li>

                      <li>
                        <a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Options#INDEX_TYPE"><code>INDEX\_TYPE</code></a>: Type of index to create, when <code>action</code> is <a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#CREATE_INDEX"><code>CREATE\_INDEX</code></a>; to refresh, when <code>action</code> is <a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#REFRESH_INDEX"><code>REFRESH\_INDEX</code></a>; or to delete, when <code>action</code> is <a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#DELETE_INDEX"><code>DELETE\_INDEX</code></a>. Supported values:

                        <ul>
                          <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Options#COLUMN"><code>COLUMN</code></a>: Create or delete a <a href="/content/concepts/indexes/#column-index" target="_top">column (attribute) index</a>. </li>
                          <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Options#LOW_CARDINALITY"><code>LOW\_CARDINALITY</code></a>: Create a <a href="/content/concepts/indexes/#low-cardinality-index" target="_top">low-cardinality column (attribute) index</a>. </li>
                          <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Options#CHUNK_SKIP"><code>CHUNK\_SKIP</code></a>: Create or delete a <a href="/content/concepts/indexes/#chunk-skip-index" target="_top">chunk skip index</a>. </li>
                          <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Options#GEOSPATIAL"><code>GEOSPATIAL</code></a>: Create or delete a <a href="/content/concepts/indexes/#geospatial-index" target="_top">geospatial index</a>. </li>
                          <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Options#CAGRA"><code>CAGRA</code></a>: Create or delete a <a href="/content/concepts/indexes/#cagra-index" target="_top">CAGRA index</a> on a <a href="/content/vector_search/#vector-type" target="_top">vector column</a>. </li>
                          <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Options#HNSW"><code>HNSW</code></a>: Create or delete an <a href="/content/concepts/indexes/#hnsw-index" target="_top">HNSW index</a> on a <a href="/content/vector_search/#vector-type" target="_top">vector column</a>. </li>
                        </ul>

                        The default value is <a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Options#COLUMN"><code>COLUMN</code></a>.
                      </li>

                      <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Options#INDEX_OPTIONS"><code>INDEX\_OPTIONS</code></a>: Options to use when creating an index, in the format "key: value \[, key: value \[, ...]]". Valid options vary by index type. </li>
                    </ul>

                    The default value is an empty <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/Map.html" title="class or interface in java.util" className="external-link"><code>Map</code></a>.
                  </div>
                </div>
              </div>
            </li>
          </ul>
        </div>
      </li>

      <li>
        <div className="section method-details" id="method-detail">
          <h2>Method Details</h2>

          <ul className="member-list">
            <li>
              <div className="section detail" id="getClassSchema()">
                <h3>getClassSchema</h3>
                <div className="member-signature"><span className="modifiers">public static</span> <span className="return-type">org.apache.avro.Schema</span> <span className="element-name">getClassSchema</span>()</div>
                <div className="block">This method supports the Avro framework and is not intended to be called directly by the user.</div>

                <div className="dl notes">
                  <div className="dt">Returns:</div>
                  <div className="dd">The schema for the class.</div>
                </div>
              </div>
            </li>

            <li>
              <div className="section detail" id="getTableName()">
                <h3>getTableName</h3>
                <div className="member-signature"><span className="modifiers">public</span> <span className="return-type"><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" className="external-link">String</a></span> <span className="element-name">getTableName</span>()</div>
                <div className="block">Table on which the operation will be performed, in \[schema\_name.]table\_name format, using standard <a href="/content/concepts/tables/#table-name-resolution" target="_top">name resolution rules</a>. Must be an existing table or view.</div>

                <div className="dl notes">
                  <div className="dt">Returns:</div>
                  <div className="dd">The current value of <code>tableName</code>.</div>
                </div>
              </div>
            </li>

            <li>
              <div className="section detail" id="setTableName(java.lang.String)">
                <h3>setTableName</h3>
                <div className="member-signature"><span className="modifiers">public</span> <span className="return-type"><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest" title="class in com.gpudb.protocol">AlterTableRequest</a></span> <span className="element-name">setTableName</span><wbr /><span className="parameters">(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" className="external-link">String</a> tableName)</span></div>
                <div className="block">Table on which the operation will be performed, in \[schema\_name.]table\_name format, using standard <a href="/content/concepts/tables/#table-name-resolution" target="_top">name resolution rules</a>. Must be an existing table or view.</div>

                <div className="dl notes">
                  <div className="dt">Parameters:</div>
                  <div className="dd"><code>tableName</code> - The new value for <code>tableName</code>.</div>
                  <div className="dt">Returns:</div>
                  <div className="dd"><code>this</code> to mimic the builder pattern.</div>
                </div>
              </div>
            </li>

            <li>
              <div className="section detail" id="getAction()">
                <h3>getAction</h3>
                <div className="member-signature"><span className="modifiers">public</span> <span className="return-type"><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" className="external-link">String</a></span> <span className="element-name">getAction</span>()</div>

                <div className="block">
                  Modification operation to be applied. Supported values:

                  <ul>
                    <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#CREATE_INDEX"><code>CREATE\_INDEX</code></a>: Creates a <a href="/content/concepts/indexes/#column-index" target="_top">column (attribute) index</a>, <a href="/content/concepts/indexes/#low-cardinality-index" target="_top">low-cardinality index</a>, <a href="/content/concepts/indexes/#chunk-skip-index" target="_top">chunk skip index</a>, <a href="/content/concepts/indexes/#geospatial-index" target="_top">geospatial index</a>, <a href="/content/concepts/indexes/#cagra-index" target="_top">CAGRA index</a>, or <a href="/content/concepts/indexes/#hnsw-index" target="_top">HNSW index</a> (depending on the specified <a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Options#INDEX_TYPE"><code>INDEX\_TYPE</code></a>), on the column name specified in <a href="#getValue()"><code>value</code></a>. If this column already has the specified index, an error will be returned. </li>
                    <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#REFRESH_INDEX"><code>REFRESH\_INDEX</code></a>: Refreshes an index identified by <a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Options#INDEX_TYPE"><code>INDEX\_TYPE</code></a>, on the column name specified in <a href="#getValue()"><code>value</code></a>. Currently applicable only to CAGRA indices. </li>
                    <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#DELETE_INDEX"><code>DELETE\_INDEX</code></a>: Deletes a <a href="/content/concepts/indexes/#column-index" target="_top">column (attribute) index</a>, <a href="/content/concepts/indexes/#low-cardinality-index" target="_top">low-cardinality index</a>, <a href="/content/concepts/indexes/#chunk-skip-index" target="_top">chunk skip index</a>, <a href="/content/concepts/indexes/#geospatial-index" target="_top">geospatial index</a>, <a href="/content/concepts/indexes/#cagra-index" target="_top">CAGRA index</a>, or <a href="/content/concepts/indexes/#hnsw-index" target="_top">HNSW index</a> (depending on the specified <a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Options#INDEX_TYPE"><code>INDEX\_TYPE</code></a>), on the column name specified in <a href="#getValue()"><code>value</code></a>. If this column does not have the specified index, an error will be returned. </li>
                    <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#MOVE_TO_COLLECTION"><code>MOVE\_TO\_COLLECTION</code></a>: \[DEPRECATED--please use <a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#MOVE_TO_SCHEMA"><code>MOVE\_TO\_SCHEMA</code></a> and use <a href="/content/api/java/com/gpudb/GPUdb#createSchema(com.gpudb.protocol.CreateSchemaRequest)"><code>GPUdb.createSchema</code></a> to create the schema if non-existent] Moves a table or view into a schema named <a href="#getValue()"><code>value</code></a>. If the schema provided is non-existent, it will be automatically created. </li>
                    <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#MOVE_TO_SCHEMA"><code>MOVE\_TO\_SCHEMA</code></a>: Moves a table or view into a schema named <a href="#getValue()"><code>value</code></a>. If the schema provided is nonexistent, an error will be thrown. If <a href="#getValue()"><code>value</code></a> is empty, then the table or view will be placed in the user's default schema. </li>
                    <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#PROTECTED"><code>PROTECTED</code></a>: No longer used. Previously set whether the given <a href="#getTableName()"><code>tableName</code></a> should be protected or not. The <a href="#getValue()"><code>value</code></a> would have been either 'true' or 'false'. </li>
                    <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#RENAME_TABLE"><code>RENAME\_TABLE</code></a>: Renames a table or view to <a href="#getValue()"><code>value</code></a>. Has the same naming restrictions as <a href="/content/concepts/tables/" target="_top">tables</a>. </li>
                    <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#TTL"><code>TTL</code></a>: Sets the <a href="/content/concepts/ttl/" target="_top">time-to-live</a> in minutes of the table or view specified in <a href="#getTableName()"><code>tableName</code></a>. </li>
                    <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#ADD_COMMENT"><code>ADD\_COMMENT</code></a>: Adds the comment specified in <a href="#getValue()"><code>value</code></a> to the table specified in <a href="#getTableName()"><code>tableName</code></a>. Use <a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Options#COLUMN_NAME"><code>COLUMN\_NAME</code></a> to set the comment for a column. </li>
                    <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#ADD_COLUMN"><code>ADD\_COLUMN</code></a>: Adds the column specified in <a href="#getValue()"><code>value</code></a> to the table specified in <a href="#getTableName()"><code>tableName</code></a>. Use <a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Options#COLUMN_TYPE"><code>COLUMN\_TYPE</code></a> and <a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Options#COLUMN_PROPERTIES"><code>COLUMN\_PROPERTIES</code></a> in <a href="#getOptions()"><code>options</code></a> to set the column's type and properties, respectively. </li>
                    <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#CHANGE_COLUMN"><code>CHANGE\_COLUMN</code></a>: Changes type and properties of the column specified in <a href="#getValue()"><code>value</code></a>. Use <a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Options#COLUMN_TYPE"><code>COLUMN\_TYPE</code></a> and <a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Options#COLUMN_PROPERTIES"><code>COLUMN\_PROPERTIES</code></a> in <a href="#getOptions()"><code>options</code></a> to set the column's type and properties, respectively. Note that primary key and/or shard key columns cannot be changed. All unchanging column properties must be listed for the change to take place, e.g., to add dictionary encoding to an existing 'char4' column, both 'char4' and 'dict' must be specified in the <a href="#getOptions()"><code>options</code></a> map. </li>
                    <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#DELETE_COLUMN"><code>DELETE\_COLUMN</code></a>: Deletes the column specified in <a href="#getValue()"><code>value</code></a> from the table specified in <a href="#getTableName()"><code>tableName</code></a>. </li>
                    <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#SET_DEFAULT"><code>SET\_DEFAULT</code></a>: Sets or replaces the default value expression for the column specified in <a href="#getValue()"><code>value</code></a>. The new default is taken from <a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Options#ADD_COLUMN_EXPRESSION"><code>ADD\_COLUMN\_EXPRESSION</code></a>. Existing properties on the column are preserved. </li>
                    <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#DELETE_DEFAULT"><code>DELETE\_DEFAULT</code></a>: Removes the default value expression from the column specified in <a href="#getValue()"><code>value</code></a>. Other column properties are preserved. </li>
                    <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#CREATE_FOREIGN_KEY"><code>CREATE\_FOREIGN\_KEY</code></a>: Creates a <a href="/content/concepts/tables/#foreign-key" target="_top">foreign key</a> specified in <a href="#getValue()"><code>value</code></a> using the format '(source\_column\_name \[, ...]) references target\_table\_name(primary\_key\_column\_name \[, ...]) \[as foreign\_key\_name]'. </li>
                    <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#DELETE_FOREIGN_KEY"><code>DELETE\_FOREIGN\_KEY</code></a>: Deletes a <a href="/content/concepts/tables/#foreign-key" target="_top">foreign key</a>. The <a href="#getValue()"><code>value</code></a> should be the foreign\_key\_name specified when creating the key or the complete string used to define it. </li>
                    <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#ADD_PARTITION"><code>ADD\_PARTITION</code></a>: Adds the partition specified in <a href="#getValue()"><code>value</code></a>, to either a <a href="/content/concepts/tables/#partitioning-by-range" target="_top">range-partitioned</a> or <a href="/content/concepts/tables/#partitioning-by-list-manual" target="_top">manual list-partitioned</a> table. </li>
                    <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#REMOVE_PARTITION"><code>REMOVE\_PARTITION</code></a>: Removes the partition specified in <a href="#getValue()"><code>value</code></a> (and relocates all of its data to the default partition) from either a <a href="/content/concepts/tables/#partitioning-by-range" target="_top">range-partitioned</a> or <a href="/content/concepts/tables/#partitioning-by-list-manual" target="_top">manual list-partitioned</a> table. </li>
                    <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#DELETE_PARTITION"><code>DELETE\_PARTITION</code></a>: Deletes the partition specified in <a href="#getValue()"><code>value</code></a> (and all of its data) from either a <a href="/content/concepts/tables/#partitioning-by-range" target="_top">range-partitioned</a> or <a href="/content/concepts/tables/#partitioning-by-list-manual" target="_top">manual list-partitioned</a> table. </li>
                    <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#SET_GLOBAL_ACCESS_MODE"><code>SET\_GLOBAL\_ACCESS\_MODE</code></a>: Sets the global access mode (i.e. locking) for the table specified in <a href="#getTableName()"><code>tableName</code></a>. Specify the access mode in <a href="#getValue()"><code>value</code></a>. Valid modes are 'no\_access', 'read\_only', 'write\_only' and 'read\_write'. </li>
                    <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#REFRESH"><code>REFRESH</code></a>: For a <a href="/content/concepts/materialized_views/" target="_top">materialized view</a>, replays all the table creation commands required to create the view. For an <a href="/content/concepts/external_tables/" target="_top">external table</a>, reloads all data in the table from its associated source files or <a href="/content/concepts/data_sources/" target="_top">data source</a>. </li>
                    <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#SET_REFRESH_METHOD"><code>SET\_REFRESH\_METHOD</code></a>: For a <a href="/content/concepts/materialized_views/" target="_top">materialized view</a>, sets the method by which the view is refreshed to the method specified in <a href="#getValue()"><code>value</code></a> - one of 'manual', 'periodic', or 'on\_change'. For an <a href="/content/concepts/external_tables/" target="_top">external table</a>, sets the method by which the table is refreshed to the method specified in <a href="#getValue()"><code>value</code></a> - either 'manual' or 'on\_start'. </li>
                    <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#SET_REFRESH_START_TIME"><code>SET\_REFRESH\_START\_TIME</code></a>: Sets the time to start periodic refreshes of this <a href="/content/concepts/materialized_views/" target="_top">materialized view</a> to the datetime string specified in <a href="#getValue()"><code>value</code></a> with format 'YYYY-MM-DD HH:MM:SS'. Subsequent refreshes occur at the specified time + N \* the refresh period. </li>
                    <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#SET_REFRESH_STOP_TIME"><code>SET\_REFRESH\_STOP\_TIME</code></a>: Sets the time to stop periodic refreshes of this <a href="/content/concepts/materialized_views/" target="_top">materialized view</a> to the datetime string specified in <a href="#getValue()"><code>value</code></a> with format 'YYYY-MM-DD HH:MM:SS'. </li>
                    <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#SET_REFRESH_PERIOD"><code>SET\_REFRESH\_PERIOD</code></a>: Sets the time interval in seconds at which to refresh this <a href="/content/concepts/materialized_views/" target="_top">materialized view</a> to the value specified in <a href="#getValue()"><code>value</code></a>. Also, sets the refresh method to periodic if not already set. </li>
                    <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#SET_REFRESH_SPAN"><code>SET\_REFRESH\_SPAN</code></a>: Sets the future time-offset(in seconds) for the view refresh to stop. </li>
                    <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#SET_REFRESH_EXECUTE_AS"><code>SET\_REFRESH\_EXECUTE\_AS</code></a>: Sets the user name to refresh this <a href="/content/concepts/materialized_views/" target="_top">materialized view</a> to the value specified in <a href="#getValue()"><code>value</code></a>. </li>
                    <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#REMOVE_TEXT_SEARCH_ATTRIBUTES"><code>REMOVE\_TEXT\_SEARCH\_ATTRIBUTES</code></a>: Removes <a href="/content/concepts/full_text_search/" target="_top">text search</a> attribute from all columns. </li>
                    <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#REMOVE_SHARD_KEYS"><code>REMOVE\_SHARD\_KEYS</code></a>: Removes the shard key property from all columns, so that the table will be considered randomly sharded. The data is not moved. The <a href="#getValue()"><code>value</code></a> is ignored. </li>
                    <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#SET_STRATEGY_DEFINITION"><code>SET\_STRATEGY\_DEFINITION</code></a>: Sets the <a href="/content/rm/concepts/#tier-strategies" target="_top">tier strategy</a> for the table and its columns to the one specified in <a href="#getValue()"><code>value</code></a>, replacing the existing tier strategy in its entirety. </li>
                    <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#CANCEL_DATASOURCE_SUBSCRIPTION"><code>CANCEL\_DATASOURCE\_SUBSCRIPTION</code></a>: Permanently unsubscribe a data source that is loading continuously as a stream. The data source can be Kafka / S3 / Azure / GCS. </li>
                    <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#DROP_DATASOURCE_SUBSCRIPTION"><code>DROP\_DATASOURCE\_SUBSCRIPTION</code></a>: Permanently delete a cancelled data source subscription. </li>
                    <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#PAUSE_DATASOURCE_SUBSCRIPTION"><code>PAUSE\_DATASOURCE\_SUBSCRIPTION</code></a>: Temporarily unsubscribe a data source that is loading continuously as a stream. The data source can be Kafka / S3 / Azure / GCS. </li>
                    <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#RESUME_DATASOURCE_SUBSCRIPTION"><code>RESUME\_DATASOURCE\_SUBSCRIPTION</code></a>: Resubscribe to a paused data source subscription. The data source can be Kafka / S3 / Azure / GCS. </li>
                    <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#CHANGE_OWNER"><code>CHANGE\_OWNER</code></a>: Change the owner resource group of the table. </li>
                    <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#SET_LOAD_VECTORS_POLICY"><code>SET\_LOAD\_VECTORS\_POLICY</code></a>: Set startup data loading scheme for the table; see description of 'load\_vectors\_policy' in <a href="/content/api/java/com/gpudb/GPUdb#createTable(com.gpudb.protocol.CreateTableRequest)"><code>GPUdb.createTable</code></a> for possible values for <a href="#getValue()"><code>value</code></a>. </li>
                    <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#SET_BUILD_PK_INDEX_POLICY"><code>SET\_BUILD\_PK\_INDEX\_POLICY</code></a>: Set startup primary key generation scheme for the table; see description of 'build\_pk\_index\_policy' in <a href="/content/api/java/com/gpudb/GPUdb#createTable(com.gpudb.protocol.CreateTableRequest)"><code>GPUdb.createTable</code></a> for possible values for <a href="#getValue()"><code>value</code></a>. </li>
                    <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#SET_BUILD_MATERIALIZED_VIEW_POLICY"><code>SET\_BUILD\_MATERIALIZED\_VIEW\_POLICY</code></a>: Set startup rebuilding scheme for the materialized view; see description of 'build\_materialized\_view\_policy' in <a href="/content/api/java/com/gpudb/GPUdb#createMaterializedView(com.gpudb.protocol.CreateMaterializedViewRequest)"><code>GPUdb.createMaterializedView</code></a> for possible values for <a href="#getValue()"><code>value</code></a>. </li>
                  </ul>
                </div>

                <div className="dl notes">
                  <div className="dt">Returns:</div>
                  <div className="dd">The current value of <code>action</code>.</div>
                </div>
              </div>
            </li>

            <li>
              <div className="section detail" id="setAction(java.lang.String)">
                <h3>setAction</h3>
                <div className="member-signature"><span className="modifiers">public</span> <span className="return-type"><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest" title="class in com.gpudb.protocol">AlterTableRequest</a></span> <span className="element-name">setAction</span><wbr /><span className="parameters">(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" className="external-link">String</a> action)</span></div>

                <div className="block">
                  Modification operation to be applied. Supported values:

                  <ul>
                    <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#CREATE_INDEX"><code>CREATE\_INDEX</code></a>: Creates a <a href="/content/concepts/indexes/#column-index" target="_top">column (attribute) index</a>, <a href="/content/concepts/indexes/#low-cardinality-index" target="_top">low-cardinality index</a>, <a href="/content/concepts/indexes/#chunk-skip-index" target="_top">chunk skip index</a>, <a href="/content/concepts/indexes/#geospatial-index" target="_top">geospatial index</a>, <a href="/content/concepts/indexes/#cagra-index" target="_top">CAGRA index</a>, or <a href="/content/concepts/indexes/#hnsw-index" target="_top">HNSW index</a> (depending on the specified <a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Options#INDEX_TYPE"><code>INDEX\_TYPE</code></a>), on the column name specified in <a href="#getValue()"><code>value</code></a>. If this column already has the specified index, an error will be returned. </li>
                    <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#REFRESH_INDEX"><code>REFRESH\_INDEX</code></a>: Refreshes an index identified by <a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Options#INDEX_TYPE"><code>INDEX\_TYPE</code></a>, on the column name specified in <a href="#getValue()"><code>value</code></a>. Currently applicable only to CAGRA indices. </li>
                    <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#DELETE_INDEX"><code>DELETE\_INDEX</code></a>: Deletes a <a href="/content/concepts/indexes/#column-index" target="_top">column (attribute) index</a>, <a href="/content/concepts/indexes/#low-cardinality-index" target="_top">low-cardinality index</a>, <a href="/content/concepts/indexes/#chunk-skip-index" target="_top">chunk skip index</a>, <a href="/content/concepts/indexes/#geospatial-index" target="_top">geospatial index</a>, <a href="/content/concepts/indexes/#cagra-index" target="_top">CAGRA index</a>, or <a href="/content/concepts/indexes/#hnsw-index" target="_top">HNSW index</a> (depending on the specified <a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Options#INDEX_TYPE"><code>INDEX\_TYPE</code></a>), on the column name specified in <a href="#getValue()"><code>value</code></a>. If this column does not have the specified index, an error will be returned. </li>
                    <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#MOVE_TO_COLLECTION"><code>MOVE\_TO\_COLLECTION</code></a>: \[DEPRECATED--please use <a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#MOVE_TO_SCHEMA"><code>MOVE\_TO\_SCHEMA</code></a> and use <a href="/content/api/java/com/gpudb/GPUdb#createSchema(com.gpudb.protocol.CreateSchemaRequest)"><code>GPUdb.createSchema</code></a> to create the schema if non-existent] Moves a table or view into a schema named <a href="#getValue()"><code>value</code></a>. If the schema provided is non-existent, it will be automatically created. </li>
                    <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#MOVE_TO_SCHEMA"><code>MOVE\_TO\_SCHEMA</code></a>: Moves a table or view into a schema named <a href="#getValue()"><code>value</code></a>. If the schema provided is nonexistent, an error will be thrown. If <a href="#getValue()"><code>value</code></a> is empty, then the table or view will be placed in the user's default schema. </li>
                    <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#PROTECTED"><code>PROTECTED</code></a>: No longer used. Previously set whether the given <a href="#getTableName()"><code>tableName</code></a> should be protected or not. The <a href="#getValue()"><code>value</code></a> would have been either 'true' or 'false'. </li>
                    <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#RENAME_TABLE"><code>RENAME\_TABLE</code></a>: Renames a table or view to <a href="#getValue()"><code>value</code></a>. Has the same naming restrictions as <a href="/content/concepts/tables/" target="_top">tables</a>. </li>
                    <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#TTL"><code>TTL</code></a>: Sets the <a href="/content/concepts/ttl/" target="_top">time-to-live</a> in minutes of the table or view specified in <a href="#getTableName()"><code>tableName</code></a>. </li>
                    <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#ADD_COMMENT"><code>ADD\_COMMENT</code></a>: Adds the comment specified in <a href="#getValue()"><code>value</code></a> to the table specified in <a href="#getTableName()"><code>tableName</code></a>. Use <a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Options#COLUMN_NAME"><code>COLUMN\_NAME</code></a> to set the comment for a column. </li>
                    <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#ADD_COLUMN"><code>ADD\_COLUMN</code></a>: Adds the column specified in <a href="#getValue()"><code>value</code></a> to the table specified in <a href="#getTableName()"><code>tableName</code></a>. Use <a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Options#COLUMN_TYPE"><code>COLUMN\_TYPE</code></a> and <a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Options#COLUMN_PROPERTIES"><code>COLUMN\_PROPERTIES</code></a> in <a href="#getOptions()"><code>options</code></a> to set the column's type and properties, respectively. </li>
                    <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#CHANGE_COLUMN"><code>CHANGE\_COLUMN</code></a>: Changes type and properties of the column specified in <a href="#getValue()"><code>value</code></a>. Use <a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Options#COLUMN_TYPE"><code>COLUMN\_TYPE</code></a> and <a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Options#COLUMN_PROPERTIES"><code>COLUMN\_PROPERTIES</code></a> in <a href="#getOptions()"><code>options</code></a> to set the column's type and properties, respectively. Note that primary key and/or shard key columns cannot be changed. All unchanging column properties must be listed for the change to take place, e.g., to add dictionary encoding to an existing 'char4' column, both 'char4' and 'dict' must be specified in the <a href="#getOptions()"><code>options</code></a> map. </li>
                    <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#DELETE_COLUMN"><code>DELETE\_COLUMN</code></a>: Deletes the column specified in <a href="#getValue()"><code>value</code></a> from the table specified in <a href="#getTableName()"><code>tableName</code></a>. </li>
                    <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#SET_DEFAULT"><code>SET\_DEFAULT</code></a>: Sets or replaces the default value expression for the column specified in <a href="#getValue()"><code>value</code></a>. The new default is taken from <a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Options#ADD_COLUMN_EXPRESSION"><code>ADD\_COLUMN\_EXPRESSION</code></a>. Existing properties on the column are preserved. </li>
                    <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#DELETE_DEFAULT"><code>DELETE\_DEFAULT</code></a>: Removes the default value expression from the column specified in <a href="#getValue()"><code>value</code></a>. Other column properties are preserved. </li>
                    <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#CREATE_FOREIGN_KEY"><code>CREATE\_FOREIGN\_KEY</code></a>: Creates a <a href="/content/concepts/tables/#foreign-key" target="_top">foreign key</a> specified in <a href="#getValue()"><code>value</code></a> using the format '(source\_column\_name \[, ...]) references target\_table\_name(primary\_key\_column\_name \[, ...]) \[as foreign\_key\_name]'. </li>
                    <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#DELETE_FOREIGN_KEY"><code>DELETE\_FOREIGN\_KEY</code></a>: Deletes a <a href="/content/concepts/tables/#foreign-key" target="_top">foreign key</a>. The <a href="#getValue()"><code>value</code></a> should be the foreign\_key\_name specified when creating the key or the complete string used to define it. </li>
                    <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#ADD_PARTITION"><code>ADD\_PARTITION</code></a>: Adds the partition specified in <a href="#getValue()"><code>value</code></a>, to either a <a href="/content/concepts/tables/#partitioning-by-range" target="_top">range-partitioned</a> or <a href="/content/concepts/tables/#partitioning-by-list-manual" target="_top">manual list-partitioned</a> table. </li>
                    <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#REMOVE_PARTITION"><code>REMOVE\_PARTITION</code></a>: Removes the partition specified in <a href="#getValue()"><code>value</code></a> (and relocates all of its data to the default partition) from either a <a href="/content/concepts/tables/#partitioning-by-range" target="_top">range-partitioned</a> or <a href="/content/concepts/tables/#partitioning-by-list-manual" target="_top">manual list-partitioned</a> table. </li>
                    <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#DELETE_PARTITION"><code>DELETE\_PARTITION</code></a>: Deletes the partition specified in <a href="#getValue()"><code>value</code></a> (and all of its data) from either a <a href="/content/concepts/tables/#partitioning-by-range" target="_top">range-partitioned</a> or <a href="/content/concepts/tables/#partitioning-by-list-manual" target="_top">manual list-partitioned</a> table. </li>
                    <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#SET_GLOBAL_ACCESS_MODE"><code>SET\_GLOBAL\_ACCESS\_MODE</code></a>: Sets the global access mode (i.e. locking) for the table specified in <a href="#getTableName()"><code>tableName</code></a>. Specify the access mode in <a href="#getValue()"><code>value</code></a>. Valid modes are 'no\_access', 'read\_only', 'write\_only' and 'read\_write'. </li>
                    <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#REFRESH"><code>REFRESH</code></a>: For a <a href="/content/concepts/materialized_views/" target="_top">materialized view</a>, replays all the table creation commands required to create the view. For an <a href="/content/concepts/external_tables/" target="_top">external table</a>, reloads all data in the table from its associated source files or <a href="/content/concepts/data_sources/" target="_top">data source</a>. </li>
                    <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#SET_REFRESH_METHOD"><code>SET\_REFRESH\_METHOD</code></a>: For a <a href="/content/concepts/materialized_views/" target="_top">materialized view</a>, sets the method by which the view is refreshed to the method specified in <a href="#getValue()"><code>value</code></a> - one of 'manual', 'periodic', or 'on\_change'. For an <a href="/content/concepts/external_tables/" target="_top">external table</a>, sets the method by which the table is refreshed to the method specified in <a href="#getValue()"><code>value</code></a> - either 'manual' or 'on\_start'. </li>
                    <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#SET_REFRESH_START_TIME"><code>SET\_REFRESH\_START\_TIME</code></a>: Sets the time to start periodic refreshes of this <a href="/content/concepts/materialized_views/" target="_top">materialized view</a> to the datetime string specified in <a href="#getValue()"><code>value</code></a> with format 'YYYY-MM-DD HH:MM:SS'. Subsequent refreshes occur at the specified time + N \* the refresh period. </li>
                    <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#SET_REFRESH_STOP_TIME"><code>SET\_REFRESH\_STOP\_TIME</code></a>: Sets the time to stop periodic refreshes of this <a href="/content/concepts/materialized_views/" target="_top">materialized view</a> to the datetime string specified in <a href="#getValue()"><code>value</code></a> with format 'YYYY-MM-DD HH:MM:SS'. </li>
                    <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#SET_REFRESH_PERIOD"><code>SET\_REFRESH\_PERIOD</code></a>: Sets the time interval in seconds at which to refresh this <a href="/content/concepts/materialized_views/" target="_top">materialized view</a> to the value specified in <a href="#getValue()"><code>value</code></a>. Also, sets the refresh method to periodic if not already set. </li>
                    <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#SET_REFRESH_SPAN"><code>SET\_REFRESH\_SPAN</code></a>: Sets the future time-offset(in seconds) for the view refresh to stop. </li>
                    <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#SET_REFRESH_EXECUTE_AS"><code>SET\_REFRESH\_EXECUTE\_AS</code></a>: Sets the user name to refresh this <a href="/content/concepts/materialized_views/" target="_top">materialized view</a> to the value specified in <a href="#getValue()"><code>value</code></a>. </li>
                    <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#REMOVE_TEXT_SEARCH_ATTRIBUTES"><code>REMOVE\_TEXT\_SEARCH\_ATTRIBUTES</code></a>: Removes <a href="/content/concepts/full_text_search/" target="_top">text search</a> attribute from all columns. </li>
                    <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#REMOVE_SHARD_KEYS"><code>REMOVE\_SHARD\_KEYS</code></a>: Removes the shard key property from all columns, so that the table will be considered randomly sharded. The data is not moved. The <a href="#getValue()"><code>value</code></a> is ignored. </li>
                    <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#SET_STRATEGY_DEFINITION"><code>SET\_STRATEGY\_DEFINITION</code></a>: Sets the <a href="/content/rm/concepts/#tier-strategies" target="_top">tier strategy</a> for the table and its columns to the one specified in <a href="#getValue()"><code>value</code></a>, replacing the existing tier strategy in its entirety. </li>
                    <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#CANCEL_DATASOURCE_SUBSCRIPTION"><code>CANCEL\_DATASOURCE\_SUBSCRIPTION</code></a>: Permanently unsubscribe a data source that is loading continuously as a stream. The data source can be Kafka / S3 / Azure / GCS. </li>
                    <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#DROP_DATASOURCE_SUBSCRIPTION"><code>DROP\_DATASOURCE\_SUBSCRIPTION</code></a>: Permanently delete a cancelled data source subscription. </li>
                    <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#PAUSE_DATASOURCE_SUBSCRIPTION"><code>PAUSE\_DATASOURCE\_SUBSCRIPTION</code></a>: Temporarily unsubscribe a data source that is loading continuously as a stream. The data source can be Kafka / S3 / Azure / GCS. </li>
                    <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#RESUME_DATASOURCE_SUBSCRIPTION"><code>RESUME\_DATASOURCE\_SUBSCRIPTION</code></a>: Resubscribe to a paused data source subscription. The data source can be Kafka / S3 / Azure / GCS. </li>
                    <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#CHANGE_OWNER"><code>CHANGE\_OWNER</code></a>: Change the owner resource group of the table. </li>
                    <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#SET_LOAD_VECTORS_POLICY"><code>SET\_LOAD\_VECTORS\_POLICY</code></a>: Set startup data loading scheme for the table; see description of 'load\_vectors\_policy' in <a href="/content/api/java/com/gpudb/GPUdb#createTable(com.gpudb.protocol.CreateTableRequest)"><code>GPUdb.createTable</code></a> for possible values for <a href="#getValue()"><code>value</code></a>. </li>
                    <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#SET_BUILD_PK_INDEX_POLICY"><code>SET\_BUILD\_PK\_INDEX\_POLICY</code></a>: Set startup primary key generation scheme for the table; see description of 'build\_pk\_index\_policy' in <a href="/content/api/java/com/gpudb/GPUdb#createTable(com.gpudb.protocol.CreateTableRequest)"><code>GPUdb.createTable</code></a> for possible values for <a href="#getValue()"><code>value</code></a>. </li>
                    <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#SET_BUILD_MATERIALIZED_VIEW_POLICY"><code>SET\_BUILD\_MATERIALIZED\_VIEW\_POLICY</code></a>: Set startup rebuilding scheme for the materialized view; see description of 'build\_materialized\_view\_policy' in <a href="/content/api/java/com/gpudb/GPUdb#createMaterializedView(com.gpudb.protocol.CreateMaterializedViewRequest)"><code>GPUdb.createMaterializedView</code></a> for possible values for <a href="#getValue()"><code>value</code></a>. </li>
                  </ul>
                </div>

                <div className="dl notes">
                  <div className="dt">Parameters:</div>
                  <div className="dd"><code>action</code> - The new value for <code>action</code>.</div>
                  <div className="dt">Returns:</div>
                  <div className="dd"><code>this</code> to mimic the builder pattern.</div>
                </div>
              </div>
            </li>

            <li>
              <div className="section detail" id="getValue()">
                <h3>getValue</h3>
                <div className="member-signature"><span className="modifiers">public</span> <span className="return-type"><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" className="external-link">String</a></span> <span className="element-name">getValue</span>()</div>
                <div className="block">The value of the modification, depending on <a href="#getAction()"><code>action</code></a>. For example, if <a href="#getAction()"><code>action</code></a> is <a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#ADD_COLUMN"><code>ADD\_COLUMN</code></a>, this would be the column name; while the column's definition would be covered by the <a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Options#COLUMN_TYPE"><code>COLUMN\_TYPE</code></a>, <a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Options#COLUMN_PROPERTIES"><code>COLUMN\_PROPERTIES</code></a>, <a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Options#COLUMN_DEFAULT_VALUE"><code>COLUMN\_DEFAULT\_VALUE</code></a>, and <a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Options#ADD_COLUMN_EXPRESSION"><code>ADD\_COLUMN\_EXPRESSION</code></a> in <a href="#getOptions()"><code>options</code></a>. If <a href="#getAction()"><code>action</code></a> is <a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#TTL"><code>TTL</code></a>, it would be the number of minutes for the new TTL. If <a href="#getAction()"><code>action</code></a> is <a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#REFRESH"><code>REFRESH</code></a>, this field would be blank.</div>

                <div className="dl notes">
                  <div className="dt">Returns:</div>
                  <div className="dd">The current value of <code>value</code>.</div>
                </div>
              </div>
            </li>

            <li>
              <div className="section detail" id="setValue(java.lang.String)">
                <h3>setValue</h3>
                <div className="member-signature"><span className="modifiers">public</span> <span className="return-type"><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest" title="class in com.gpudb.protocol">AlterTableRequest</a></span> <span className="element-name">setValue</span><wbr /><span className="parameters">(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" className="external-link">String</a> value)</span></div>
                <div className="block">The value of the modification, depending on <a href="#getAction()"><code>action</code></a>. For example, if <a href="#getAction()"><code>action</code></a> is <a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#ADD_COLUMN"><code>ADD\_COLUMN</code></a>, this would be the column name; while the column's definition would be covered by the <a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Options#COLUMN_TYPE"><code>COLUMN\_TYPE</code></a>, <a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Options#COLUMN_PROPERTIES"><code>COLUMN\_PROPERTIES</code></a>, <a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Options#COLUMN_DEFAULT_VALUE"><code>COLUMN\_DEFAULT\_VALUE</code></a>, and <a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Options#ADD_COLUMN_EXPRESSION"><code>ADD\_COLUMN\_EXPRESSION</code></a> in <a href="#getOptions()"><code>options</code></a>. If <a href="#getAction()"><code>action</code></a> is <a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#TTL"><code>TTL</code></a>, it would be the number of minutes for the new TTL. If <a href="#getAction()"><code>action</code></a> is <a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#REFRESH"><code>REFRESH</code></a>, this field would be blank.</div>

                <div className="dl notes">
                  <div className="dt">Parameters:</div>
                  <div className="dd"><code>value</code> - The new value for <code>value</code>.</div>
                  <div className="dt">Returns:</div>
                  <div className="dd"><code>this</code> to mimic the builder pattern.</div>
                </div>
              </div>
            </li>

            <li>
              <div className="section detail" id="getOptions()">
                <h3>getOptions</h3>
                <div className="member-signature"><span className="modifiers">public</span> <span className="return-type"><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/Map.html" title="class or interface in java.util" className="external-link">Map</a>\<<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" className="external-link">String</a>,<wbr /><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" className="external-link">String</a>></span> <span className="element-name">getOptions</span>()</div>

                <div className="block">
                  Optional parameters.

                  <ul>
                    <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Options#ACTION"><code>ACTION</code></a> </li>
                    <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Options#COLUMN_NAME"><code>COLUMN\_NAME</code></a> </li>
                    <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Options#TABLE_NAME"><code>TABLE\_NAME</code></a> </li>
                    <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Options#COLUMN_DEFAULT_VALUE"><code>COLUMN\_DEFAULT\_VALUE</code></a>: When adding a column, set a literal default value for existing records. For nullable columns, the default value will be null, regardless of data type. Also persisted as the column's default for future inserts that omit the column. </li>
                    <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Options#COLUMN_PROPERTIES"><code>COLUMN\_PROPERTIES</code></a>: When adding or changing a column, set the column properties (strings, separated by a comma: data, text\_search, char8, int8 etc). </li>
                    <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Options#COLUMN_TYPE"><code>COLUMN\_TYPE</code></a>: When adding or changing a column, set the column type (strings, separated by a comma: int, double, string, null etc). </li>
                    <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Options#COPY_VALUES_FROM_COLUMN"><code>COPY\_VALUES\_FROM\_COLUMN</code></a>: \[DEPRECATED] Please use <a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Options#ADD_COLUMN_EXPRESSION"><code>ADD\_COLUMN\_EXPRESSION</code></a> instead. </li>
                    <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Options#RENAME_COLUMN"><code>RENAME\_COLUMN</code></a>: When changing a column, specify new column name. </li>

                    <li>
                      <a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Options#VALIDATE_CHANGE_COLUMN"><code>VALIDATE\_CHANGE\_COLUMN</code></a>: When changing a column, validate the change before applying it (or not). Supported values:

                      <ul>
                        <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Options#TRUE"><code>TRUE</code></a>: Validate all values. A value too large (or too long) for the new type will prevent any change. </li>
                        <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Options#FALSE"><code>FALSE</code></a>: When a value is too large or long, it will be truncated. </li>
                      </ul>

                      The default value is <a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Options#TRUE"><code>TRUE</code></a>.
                    </li>

                    <li>
                      <a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Options#UPDATE_LAST_ACCESS_TIME"><code>UPDATE\_LAST\_ACCESS\_TIME</code></a>: Indicates whether the <a href="/content/concepts/ttl/" target="_top">time-to-live</a> (TTL) expiration countdown timer should be reset to the table's TTL. Supported values:

                      <ul>
                        <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Options#TRUE"><code>TRUE</code></a>: Reset the expiration countdown timer to the table's configured TTL. </li>
                        <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Options#FALSE"><code>FALSE</code></a>: Don't reset the timer; expiration countdown will continue from where it is, as if the table had not been accessed. </li>
                      </ul>

                      The default value is <a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Options#TRUE"><code>TRUE</code></a>.
                    </li>

                    <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Options#ADD_COLUMN_EXPRESSION"><code>ADD\_COLUMN\_EXPRESSION</code></a>: When adding a column or setting a new default with <a href="#getAction()"><code>action</code></a> set to <a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#SET_DEFAULT"><code>SET\_DEFAULT</code></a>, the new default expression (GPUdb-syntax) for the column. Any valid expression may be used, including one containing references to existing columns in the same table. Persisted as the column's default for future inserts that omit the column; for add\_column, also used to backfill existing rows. </li>
                    <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Options#ADD_COLUMN_EXPRESSION_SQL"><code>ADD\_COLUMN\_EXPRESSION\_SQL</code></a>: Optional SQL-syntax form of <a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Options#ADD_COLUMN_EXPRESSION"><code>ADD\_COLUMN\_EXPRESSION</code></a>, used only when the SQL syntax differs from the GPUdb syntax. Persisted alongside the GPUdb form so SHOW CREATE TABLE / information\_schema can reproduce the original SQL. </li>
                    <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Options#STRATEGY_DEFINITION"><code>STRATEGY\_DEFINITION</code></a>: Parameter for specifying the <a href="/content/rm/concepts/#tier-strategies" target="_top">tier strategy</a> for the table and its columns when <a href="#getAction()"><code>action</code></a> is <a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#SET_STRATEGY_DEFINITION"><code>SET\_STRATEGY\_DEFINITION</code></a>, replacing the existing tier strategy in its entirety. </li>

                    <li>
                      <a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Options#INDEX_TYPE"><code>INDEX\_TYPE</code></a>: Type of index to create, when <a href="#getAction()"><code>action</code></a> is <a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#CREATE_INDEX"><code>CREATE\_INDEX</code></a>; to refresh, when <a href="#getAction()"><code>action</code></a> is <a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#REFRESH_INDEX"><code>REFRESH\_INDEX</code></a>; or to delete, when <a href="#getAction()"><code>action</code></a> is <a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#DELETE_INDEX"><code>DELETE\_INDEX</code></a>. Supported values:

                      <ul>
                        <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Options#COLUMN"><code>COLUMN</code></a>: Create or delete a <a href="/content/concepts/indexes/#column-index" target="_top">column (attribute) index</a>. </li>
                        <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Options#LOW_CARDINALITY"><code>LOW\_CARDINALITY</code></a>: Create a <a href="/content/concepts/indexes/#low-cardinality-index" target="_top">low-cardinality column (attribute) index</a>. </li>
                        <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Options#CHUNK_SKIP"><code>CHUNK\_SKIP</code></a>: Create or delete a <a href="/content/concepts/indexes/#chunk-skip-index" target="_top">chunk skip index</a>. </li>
                        <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Options#GEOSPATIAL"><code>GEOSPATIAL</code></a>: Create or delete a <a href="/content/concepts/indexes/#geospatial-index" target="_top">geospatial index</a>. </li>
                        <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Options#CAGRA"><code>CAGRA</code></a>: Create or delete a <a href="/content/concepts/indexes/#cagra-index" target="_top">CAGRA index</a> on a <a href="/content/vector_search/#vector-type" target="_top">vector column</a>. </li>
                        <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Options#HNSW"><code>HNSW</code></a>: Create or delete an <a href="/content/concepts/indexes/#hnsw-index" target="_top">HNSW index</a> on a <a href="/content/vector_search/#vector-type" target="_top">vector column</a>. </li>
                      </ul>

                      The default value is <a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Options#COLUMN"><code>COLUMN</code></a>.
                    </li>

                    <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Options#INDEX_OPTIONS"><code>INDEX\_OPTIONS</code></a>: Options to use when creating an index, in the format "key: value \[, key: value \[, ...]]". Valid options vary by index type. </li>
                  </ul>

                  The default value is an empty <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/Map.html" title="class or interface in java.util" className="external-link"><code>Map</code></a>.
                </div>

                <div className="dl notes">
                  <div className="dt">Returns:</div>
                  <div className="dd">The current value of <code>options</code>.</div>
                </div>
              </div>
            </li>

            <li>
              <div className="section detail" id="setOptions(java.util.Map)">
                <h3>setOptions</h3>
                <div className="member-signature"><span className="modifiers">public</span> <span className="return-type"><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest" title="class in com.gpudb.protocol">AlterTableRequest</a></span> <span className="element-name">setOptions</span><wbr /><span className="parameters">(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/Map.html" title="class or interface in java.util" className="external-link">Map</a>\<<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" className="external-link">String</a>,<wbr /><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" className="external-link">String</a>> options)</span></div>

                <div className="block">
                  Optional parameters.

                  <ul>
                    <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Options#ACTION"><code>ACTION</code></a> </li>
                    <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Options#COLUMN_NAME"><code>COLUMN\_NAME</code></a> </li>
                    <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Options#TABLE_NAME"><code>TABLE\_NAME</code></a> </li>
                    <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Options#COLUMN_DEFAULT_VALUE"><code>COLUMN\_DEFAULT\_VALUE</code></a>: When adding a column, set a literal default value for existing records. For nullable columns, the default value will be null, regardless of data type. Also persisted as the column's default for future inserts that omit the column. </li>
                    <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Options#COLUMN_PROPERTIES"><code>COLUMN\_PROPERTIES</code></a>: When adding or changing a column, set the column properties (strings, separated by a comma: data, text\_search, char8, int8 etc). </li>
                    <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Options#COLUMN_TYPE"><code>COLUMN\_TYPE</code></a>: When adding or changing a column, set the column type (strings, separated by a comma: int, double, string, null etc). </li>
                    <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Options#COPY_VALUES_FROM_COLUMN"><code>COPY\_VALUES\_FROM\_COLUMN</code></a>: \[DEPRECATED] Please use <a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Options#ADD_COLUMN_EXPRESSION"><code>ADD\_COLUMN\_EXPRESSION</code></a> instead. </li>
                    <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Options#RENAME_COLUMN"><code>RENAME\_COLUMN</code></a>: When changing a column, specify new column name. </li>

                    <li>
                      <a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Options#VALIDATE_CHANGE_COLUMN"><code>VALIDATE\_CHANGE\_COLUMN</code></a>: When changing a column, validate the change before applying it (or not). Supported values:

                      <ul>
                        <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Options#TRUE"><code>TRUE</code></a>: Validate all values. A value too large (or too long) for the new type will prevent any change. </li>
                        <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Options#FALSE"><code>FALSE</code></a>: When a value is too large or long, it will be truncated. </li>
                      </ul>

                      The default value is <a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Options#TRUE"><code>TRUE</code></a>.
                    </li>

                    <li>
                      <a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Options#UPDATE_LAST_ACCESS_TIME"><code>UPDATE\_LAST\_ACCESS\_TIME</code></a>: Indicates whether the <a href="/content/concepts/ttl/" target="_top">time-to-live</a> (TTL) expiration countdown timer should be reset to the table's TTL. Supported values:

                      <ul>
                        <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Options#TRUE"><code>TRUE</code></a>: Reset the expiration countdown timer to the table's configured TTL. </li>
                        <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Options#FALSE"><code>FALSE</code></a>: Don't reset the timer; expiration countdown will continue from where it is, as if the table had not been accessed. </li>
                      </ul>

                      The default value is <a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Options#TRUE"><code>TRUE</code></a>.
                    </li>

                    <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Options#ADD_COLUMN_EXPRESSION"><code>ADD\_COLUMN\_EXPRESSION</code></a>: When adding a column or setting a new default with <a href="#getAction()"><code>action</code></a> set to <a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#SET_DEFAULT"><code>SET\_DEFAULT</code></a>, the new default expression (GPUdb-syntax) for the column. Any valid expression may be used, including one containing references to existing columns in the same table. Persisted as the column's default for future inserts that omit the column; for add\_column, also used to backfill existing rows. </li>
                    <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Options#ADD_COLUMN_EXPRESSION_SQL"><code>ADD\_COLUMN\_EXPRESSION\_SQL</code></a>: Optional SQL-syntax form of <a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Options#ADD_COLUMN_EXPRESSION"><code>ADD\_COLUMN\_EXPRESSION</code></a>, used only when the SQL syntax differs from the GPUdb syntax. Persisted alongside the GPUdb form so SHOW CREATE TABLE / information\_schema can reproduce the original SQL. </li>
                    <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Options#STRATEGY_DEFINITION"><code>STRATEGY\_DEFINITION</code></a>: Parameter for specifying the <a href="/content/rm/concepts/#tier-strategies" target="_top">tier strategy</a> for the table and its columns when <a href="#getAction()"><code>action</code></a> is <a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#SET_STRATEGY_DEFINITION"><code>SET\_STRATEGY\_DEFINITION</code></a>, replacing the existing tier strategy in its entirety. </li>

                    <li>
                      <a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Options#INDEX_TYPE"><code>INDEX\_TYPE</code></a>: Type of index to create, when <a href="#getAction()"><code>action</code></a> is <a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#CREATE_INDEX"><code>CREATE\_INDEX</code></a>; to refresh, when <a href="#getAction()"><code>action</code></a> is <a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#REFRESH_INDEX"><code>REFRESH\_INDEX</code></a>; or to delete, when <a href="#getAction()"><code>action</code></a> is <a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Action#DELETE_INDEX"><code>DELETE\_INDEX</code></a>. Supported values:

                      <ul>
                        <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Options#COLUMN"><code>COLUMN</code></a>: Create or delete a <a href="/content/concepts/indexes/#column-index" target="_top">column (attribute) index</a>. </li>
                        <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Options#LOW_CARDINALITY"><code>LOW\_CARDINALITY</code></a>: Create a <a href="/content/concepts/indexes/#low-cardinality-index" target="_top">low-cardinality column (attribute) index</a>. </li>
                        <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Options#CHUNK_SKIP"><code>CHUNK\_SKIP</code></a>: Create or delete a <a href="/content/concepts/indexes/#chunk-skip-index" target="_top">chunk skip index</a>. </li>
                        <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Options#GEOSPATIAL"><code>GEOSPATIAL</code></a>: Create or delete a <a href="/content/concepts/indexes/#geospatial-index" target="_top">geospatial index</a>. </li>
                        <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Options#CAGRA"><code>CAGRA</code></a>: Create or delete a <a href="/content/concepts/indexes/#cagra-index" target="_top">CAGRA index</a> on a <a href="/content/vector_search/#vector-type" target="_top">vector column</a>. </li>
                        <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Options#HNSW"><code>HNSW</code></a>: Create or delete an <a href="/content/concepts/indexes/#hnsw-index" target="_top">HNSW index</a> on a <a href="/content/vector_search/#vector-type" target="_top">vector column</a>. </li>
                      </ul>

                      The default value is <a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Options#COLUMN"><code>COLUMN</code></a>.
                    </li>

                    <li><a href="/content/api/java/com/gpudb/protocol/AlterTableRequest.Options#INDEX_OPTIONS"><code>INDEX\_OPTIONS</code></a>: Options to use when creating an index, in the format "key: value \[, key: value \[, ...]]". Valid options vary by index type. </li>
                  </ul>

                  The default value is an empty <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/Map.html" title="class or interface in java.util" className="external-link"><code>Map</code></a>.
                </div>

                <div className="dl notes">
                  <div className="dt">Parameters:</div>
                  <div className="dd"><code>options</code> - The new value for <code>options</code>.</div>
                  <div className="dt">Returns:</div>
                  <div className="dd"><code>this</code> to mimic the builder pattern.</div>
                </div>
              </div>
            </li>

            <li>
              <div className="section detail" id="getSchema()">
                <h3>getSchema</h3>
                <div className="member-signature"><span className="modifiers">public</span> <span className="return-type">org.apache.avro.Schema</span> <span className="element-name">getSchema</span>()</div>
                <div className="block">This method supports the Avro framework and is not intended to be called directly by the user.</div>

                <div className="dl notes">
                  <div className="dt">Specified by:</div>
                  <div className="dd"><code>getSchema</code> in interface <code>org.apache.avro.generic.GenericContainer</code></div>
                  <div className="dt">Returns:</div>
                  <div className="dd">The schema object describing this class.</div>
                </div>
              </div>
            </li>

            <li>
              <div className="section detail" id="get(int)">
                <h3>get</h3>
                <div className="member-signature"><span className="modifiers">public</span> <span className="return-type"><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" className="external-link">Object</a></span> <span className="element-name">get</span><wbr /><span className="parameters">(int index)</span></div>
                <div className="block">This method supports the Avro framework and is not intended to be called directly by the user.</div>

                <div className="dl notes">
                  <div className="dt">Specified by:</div>
                  <div className="dd"><code>get</code> in interface <code>org.apache.avro.generic.IndexedRecord</code></div>
                  <div className="dt">Parameters:</div>
                  <div className="dd"><code>index</code> - the position of the field to get</div>
                  <div className="dt">Returns:</div>
                  <div className="dd">value of the field with the given index.</div>
                  <div className="dt">Throws:</div>
                  <div className="dd"><code><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/IndexOutOfBoundsException.html" title="class or interface in java.lang" className="external-link">IndexOutOfBoundsException</a></code></div>
                </div>
              </div>
            </li>

            <li>
              <div className="section detail" id="put(int,java.lang.Object)">
                <h3>put</h3>
                <div className="member-signature"><span className="modifiers">public</span> <span className="return-type">void</span> <span className="element-name">put</span><wbr /><span className="parameters">(int index, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" className="external-link">Object</a> value)</span></div>
                <div className="block">This method supports the Avro framework and is not intended to be called directly by the user.</div>

                <div className="dl notes">
                  <div className="dt">Specified by:</div>
                  <div className="dd"><code>put</code> in interface <code>org.apache.avro.generic.IndexedRecord</code></div>
                  <div className="dt">Parameters:</div>
                  <div className="dd"><code>index</code> - the position of the field to set</div>
                  <div className="dd"><code>value</code> - the value to set</div>
                  <div className="dt">Throws:</div>
                  <div className="dd"><code><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/IndexOutOfBoundsException.html" title="class or interface in java.lang" className="external-link">IndexOutOfBoundsException</a></code></div>
                </div>
              </div>
            </li>

            <li>
              <div className="section detail" id="equals(java.lang.Object)">
                <h3>equals</h3>
                <div className="member-signature"><span className="modifiers">public</span> <span className="return-type">boolean</span> <span className="element-name">equals</span><wbr /><span className="parameters">(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" className="external-link">Object</a> obj)</span></div>

                <div className="dl notes">
                  <div className="dt">Overrides:</div>
                  <div className="dd"><code><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html#equals(java.lang.Object)" title="class or interface in java.lang" className="external-link">equals</a></code> in class <code><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" className="external-link">Object</a></code></div>
                </div>
              </div>
            </li>

            <li>
              <div className="section detail" id="toString()">
                <h3>toString</h3>
                <div className="member-signature"><span className="modifiers">public</span> <span className="return-type"><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" className="external-link">String</a></span> <span className="element-name">toString</span>()</div>

                <div className="dl notes">
                  <div className="dt">Overrides:</div>
                  <div className="dd"><code><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html#toString()" title="class or interface in java.lang" className="external-link">toString</a></code> in class <code><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" className="external-link">Object</a></code></div>
                </div>
              </div>
            </li>

            <li>
              <div className="section detail" id="hashCode()">
                <h3>hashCode</h3>
                <div className="member-signature"><span className="modifiers">public</span> <span className="return-type">int</span> <span className="element-name">hashCode</span>()</div>

                <div className="dl notes">
                  <div className="dt">Overrides:</div>
                  <div className="dd"><code><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html#hashCode()" title="class or interface in java.lang" className="external-link">hashCode</a></code> in class <code><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" className="external-link">Object</a></code></div>
                </div>
              </div>
            </li>
          </ul>
        </div>
      </li>
    </ul>
  </div>
</div>
