> ## 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-doxygen">
  <div id="abfe6dfadda06fd3614bfff428f7ee142" />

  <h2 className="memtitle"><span className="permalink"><a href="#abfe6dfadda06fd3614bfff428f7ee142">◆ </a></span>alterTableColumns() <span className="overload">\[1/2]</span></h2>

  <div className="memitem">
    <div className="memproto">
      <table className="mlabels">
        <tr>
          <td className="mlabels-left">
            <table className="memname">
              <tr>
                <td className="memname"><a className="el" href="/content/api/cs/classkinetica_1_1AlterTableColumnsResponse">AlterTableColumnsResponse</a> kinetica.Kinetica.alterTableColumns </td>
                <td>(</td>
                <td className="paramtype"><a className="el" href="/content/api/cs/classkinetica_1_1AlterTableColumnsRequest">AlterTableColumnsRequest</a></td>
                <td className="paramname"><span className="paramname"><span className="em">request\_</span></span></td>
                <td>)</td>

                <td />
              </tr>
            </table>
          </td>

          <td className="mlabels-right"> <span className="mlabels"><span className="mlabel inline">inline</span></span> </td>
        </tr>
      </table>
    </div>

    <div className="memdoc">
      <p>Apply various modifications to columns in a table, view. </p>
      <p>The available modifications include the following:</p>
      <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 className="dl params">
        <div className="dt">Parameters</div>

        <div className="dd">
          <table className="params">
            <tr>
              <td className="paramname">request\_</td>
              <td>Request object containing the parameters for the operation.</td>
            </tr>
          </table>
        </div>
      </div>

      <div className="dl section return">
        <div className="dt">Returns</div>
        <div className="dd">Response object containing the result of the operation. </div>
      </div>

      <p className="definition">Definition at line <a className="el" href="https://github.com/kineticadb/kinetica-api-cs/blob/master/Kinetica/KineticaFunctions.cs#L14104">14104</a> of file <a className="el" href="https://github.com/kineticadb/kinetica-api-cs/blob/master/Kinetica/KineticaFunctions.cs">KineticaFunctions.cs</a>.</p>
    </div>
  </div>

  <div id="a282901437048044dd481460911ebba40" />

  <h2 className="memtitle"><span className="permalink"><a href="#a282901437048044dd481460911ebba40">◆ </a></span>alterTableColumns() <span className="overload">\[2/2]</span></h2>

  <div className="memitem">
    <div className="memproto">
      <table className="mlabels">
        <tr>
          <td className="mlabels-left">
            <table className="memname">
              <tr>
                <td className="memname"><a className="el" href="/content/api/cs/classkinetica_1_1AlterTableColumnsResponse">AlterTableColumnsResponse</a> kinetica.Kinetica.alterTableColumns </td>
                <td>(</td>
                <td className="paramtype">string</td>
                <td className="paramname"><span className="paramname"><span className="em">table\_name</span></span>, </td>
              </tr>

              <tr>
                <td className="paramkey" />

                <td />

                <td className="paramtype">IList\< IDictionary\< string, string > ></td>
                <td className="paramname"><span className="paramname"><span className="em">column\_alterations</span></span>, </td>
              </tr>

              <tr>
                <td className="paramkey" />

                <td />

                <td className="paramtype">IDictionary\< string, string ></td>
                <td className="paramname"><span className="paramname"><span className="em">options</span></span> )</td>
              </tr>
            </table>
          </td>

          <td className="mlabels-right"> <span className="mlabels"><span className="mlabel inline">inline</span></span> </td>
        </tr>
      </table>
    </div>

    <div className="memdoc">
      <p>Apply various modifications to columns in a table, view. </p>
      <p>The available modifications include the following:</p>
      <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 className="dl params">
        <div className="dt">Parameters</div>

        <div className="dd">
          <table className="params">
            <tr>
              <td className="paramname">table\_name</td>
              <td>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>.</td>
            </tr>

            <tr>
              <td className="paramname">column\_alterations</td>
              <td>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'{"}"}].</td>
            </tr>

            <tr>
              <td className="paramname">options</td>
              <td>Optional parameters.</td>
            </tr>
          </table>
        </div>
      </div>

      <div className="dl section return">
        <div className="dt">Returns</div>
        <div className="dd">Response object containing the result of the operation. </div>
      </div>

      <p className="definition">Definition at line <a className="el" href="https://github.com/kineticadb/kinetica-api-cs/blob/master/Kinetica/KineticaFunctions.cs#L14170">14170</a> of file <a className="el" href="https://github.com/kineticadb/kinetica-api-cs/blob/master/Kinetica/KineticaFunctions.cs">KineticaFunctions.cs</a>.</p>
    </div>
  </div>

  <div id="ae1ffae5b402908f7e16745c2c6872c52" />

  <h2 className="memtitle"><span className="permalink"><a href="#ae1ffae5b402908f7e16745c2c6872c52">◆ </a></span>AlterTableColumnsAsync() <span className="overload">\[1/2]</span></h2>

  <div className="memitem">
    <div className="memproto">
      <table className="mlabels">
        <tr>
          <td className="mlabels-left">
            <table className="memname">
              <tr>
                <td className="memname">async System.Threading.Tasks.Task\< <a className="el" href="/content/api/cs/classkinetica_1_1AlterTableColumnsResponse">AlterTableColumnsResponse</a> > kinetica.Kinetica.AlterTableColumnsAsync </td>
                <td>(</td>
                <td className="paramtype"><a className="el" href="/content/api/cs/classkinetica_1_1AlterTableColumnsRequest">AlterTableColumnsRequest</a></td>
                <td className="paramname"><span className="paramname"><span className="em">request\_</span></span>, </td>
              </tr>

              <tr>
                <td className="paramkey" />

                <td />

                <td className="paramtype">System.Threading.CancellationToken</td>
                <td className="paramname"><span className="paramname"><span className="em">cancellationToken</span></span><span className="paramdefsep"> = </span><span className="paramdefval">default</span> )</td>
              </tr>
            </table>
          </td>

          <td className="mlabels-right"> <span className="mlabels"><span className="mlabel inline">inline</span></span> </td>
        </tr>
      </table>
    </div>

    <div className="memdoc">
      <p>Apply various modifications to columns in a table, view. </p>
      <p>(async) </p>
      <p>The available modifications include the following:</p>
      <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 className="dl params">
        <div className="dt">Parameters</div>

        <div className="dd">
          <table className="params">
            <tr>
              <td className="paramname">request\_</td>
              <td>Request object containing the parameters for the operation.</td>
            </tr>

            <tr>
              <td className="paramname">cancellationToken</td>
              <td>Cancellation token to cancel the operation.</td>
            </tr>
          </table>
        </div>
      </div>

      <div className="dl section return">
        <div className="dt">Returns</div>
        <div className="dd">Task that returns the response object containing the result of the operation.</div>
      </div>

      <p className="definition">Definition at line <a className="el" href="https://github.com/kineticadb/kinetica-api-cs/blob/master/Kinetica/KineticaFunctions.cs#L14132">14132</a> of file <a className="el" href="https://github.com/kineticadb/kinetica-api-cs/blob/master/Kinetica/KineticaFunctions.cs">KineticaFunctions.cs</a>.</p>
    </div>
  </div>

  <div id="a85cb603d539cd2820d5b4df3afde7cd5" />

  <h2 className="memtitle"><span className="permalink"><a href="#a85cb603d539cd2820d5b4df3afde7cd5">◆ </a></span>AlterTableColumnsAsync() <span className="overload">\[2/2]</span></h2>

  <div className="memitem">
    <div className="memproto">
      <table className="mlabels">
        <tr>
          <td className="mlabels-left">
            <table className="memname">
              <tr>
                <td className="memname">async System.Threading.Tasks.Task\< <a className="el" href="/content/api/cs/classkinetica_1_1AlterTableColumnsResponse">AlterTableColumnsResponse</a> > kinetica.Kinetica.AlterTableColumnsAsync </td>
                <td>(</td>
                <td className="paramtype">string</td>
                <td className="paramname"><span className="paramname"><span className="em">table\_name</span></span>, </td>
              </tr>

              <tr>
                <td className="paramkey" />

                <td />

                <td className="paramtype">IList\< IDictionary\< string, string > ></td>
                <td className="paramname"><span className="paramname"><span className="em">column\_alterations</span></span>, </td>
              </tr>

              <tr>
                <td className="paramkey" />

                <td />

                <td className="paramtype">IDictionary\< string, string ></td>
                <td className="paramname"><span className="paramname"><span className="em">options</span></span>, </td>
              </tr>

              <tr>
                <td className="paramkey" />

                <td />

                <td className="paramtype">System.Threading.CancellationToken</td>
                <td className="paramname"><span className="paramname"><span className="em">cancellationToken</span></span><span className="paramdefsep"> = </span><span className="paramdefval">default</span> )</td>
              </tr>
            </table>
          </td>

          <td className="mlabels-right"> <span className="mlabels"><span className="mlabel inline">inline</span></span> </td>
        </tr>
      </table>
    </div>

    <div className="memdoc">
      <p>Apply various modifications to columns in a table, view. </p>
      <p>(async) </p>
      <p>The available modifications include the following:</p>
      <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 className="dl params">
        <div className="dt">Parameters</div>

        <div className="dd">
          <table className="params">
            <tr>
              <td className="paramname">table\_name</td>
              <td>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>.</td>
            </tr>

            <tr>
              <td className="paramname">column\_alterations</td>
              <td>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'{"}"}].</td>
            </tr>

            <tr>
              <td className="paramname">options</td>
              <td>Optional parameters.</td>
            </tr>

            <tr>
              <td className="paramname">cancellationToken</td>
              <td>Cancellation token to cancel the operation.</td>
            </tr>
          </table>
        </div>
      </div>

      <div className="dl section return">
        <div className="dt">Returns</div>
        <div className="dd">Task that returns the response object containing the result of the operation.</div>
      </div>

      <p className="definition">Definition at line <a className="el" href="https://github.com/kineticadb/kinetica-api-cs/blob/master/Kinetica/KineticaFunctions.cs#L14211">14211</a> of file <a className="el" href="https://github.com/kineticadb/kinetica-api-cs/blob/master/Kinetica/KineticaFunctions.cs">KineticaFunctions.cs</a>.</p>
    </div>
  </div>
</div>
