> ## 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.

# alterTableColumns

<div className="kinetica-javadoc">
  <ul className="member-list">
    <li>
      <div className="section detail" id="alterTableColumns(com.gpudb.protocol.AlterTableColumnsRequest)">
        <h3>alterTableColumns</h3>
        <div className="member-signature"><span className="modifiers">public</span> <span className="return-type"><a href="/content/api/java/com/gpudb/protocol/AlterTableColumnsResponse" title="class in com.gpudb.protocol">AlterTableColumnsResponse</a></span> <span className="element-name">alterTableColumns</span><wbr /><span className="parameters">(<a href="/content/api/java/com/gpudb/protocol/AlterTableColumnsRequest" title="class in com.gpudb.protocol">AlterTableColumnsRequest</a> request)</span> throws <span className="exceptions"><a href="/content/api/java/com/gpudb/GPUdbException" title="class in com.gpudb">GPUdbException</a></span></div>

        <div className="block">
          Apply various modifications to columns in a table, view. The available modifications include the following:
          <p> Create or delete an <a href="/content/concepts/indexes/#column-index" target="_top">index</a> on a particular column. This can speed up certain operations when using expressions containing equality or relational operators on indexed columns. This only applies to tables. </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>
        </div>

        <div className="dl notes">
          <div className="dt">Parameters:</div>
          <div className="dd"><code>request</code> - <a href="/content/api/java/com/gpudb/protocol/AlterTableColumnsRequest" title="class in com.gpudb.protocol"><code>Request</code></a> object containing the parameters for the operation.</div>
          <div className="dt">Returns:</div>
          <div className="dd"><a href="/content/api/java/com/gpudb/protocol/AlterTableColumnsResponse" title="class in com.gpudb.protocol"><code>Response</code></a> object containing the results of the operation.</div>
          <div className="dt">Throws:</div>
          <div className="dd"><code><a href="/content/api/java/com/gpudb/GPUdbException" title="class in com.gpudb">GPUdbException</a></code> - if an error occurs during the operation.</div>
        </div>
      </div>
    </li>

    <li>
      <div className="section detail" id="alterTableColumns(java.lang.String,java.util.List,java.util.Map)">
        <h3>alterTableColumns</h3>
        <div className="member-signature"><span className="modifiers">public</span> <span className="return-type"><a href="/content/api/java/com/gpudb/protocol/AlterTableColumnsResponse" title="class in com.gpudb.protocol">AlterTableColumnsResponse</a></span> <span className="element-name">alterTableColumns</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/util/List.html" title="class or interface in java.util" className="external-link">List</a>\<<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>>> columnAlterations, <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> throws <span className="exceptions"><a href="/content/api/java/com/gpudb/GPUdbException" title="class in com.gpudb">GPUdbException</a></span></div>

        <div className="block">
          Apply various modifications to columns in a table, view. The available modifications include the following:
          <p> Create or delete an <a href="/content/concepts/indexes/#column-index" target="_top">index</a> on a particular column. This can speed up certain operations when using expressions containing equality or relational operators on indexed columns. This only applies to tables. </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>
        </div>

        <div className="dl notes">
          <div className="dt">Parameters:</div>
          <div className="dd"><code>tableName</code> - Table on which the operation will be performed. Must be an existing table or view, in \[schema\_name.]table\_name format, using standard <a href="/content/concepts/tables/#table-name-resolution" target="_top">name resolution rules</a>.</div>
          <div className="dd"><code>columnAlterations</code> - List of alter table add/delete/change column requests - all for the same table. Each request is a map that includes 'column\_name', 'action' and the options specific for the action. Note that the same options as in alter table requests but in the same map as the column name and the action. For example: \[{"{"}'column\_name':'col\_1','action':'change\_column','rename\_column':'col\_2'{"}"},{"{"}'column\_name':'col\_1','action':'add\_column', 'type':'int','default\_value':'1'{"}"}].</div>
          <div className="dd"><code>options</code> - Optional parameters.</div>
          <div className="dt">Returns:</div>
          <div className="dd"><a href="/content/api/java/com/gpudb/protocol/AlterTableColumnsResponse" title="class in com.gpudb.protocol"><code>Response</code></a> object containing the results of the operation.</div>
          <div className="dt">Throws:</div>
          <div className="dd"><code><a href="/content/api/java/com/gpudb/GPUdbException" title="class in com.gpudb">GPUdbException</a></code> - if an error occurs during the operation.</div>
        </div>
      </div>
    </li>
  </ul>
</div>
