Alter Table Columns

Apply various modifications to columns in a table, view. The available modifications include the following:

Create or delete an index 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.

Manage a table's columns--a column can be added, removed, or have its type and properties modified, including whether it is dictionary encoded or not.

Input Parameter Description

Name Type Description
table_name string Table on which the operation will be performed. Must be an existing table or view, in [schema_name.]table_name format, using standard name resolution rules.
column_alterations array of maps of string to strings 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'}]
options map of string to strings Optional parameters.

Output Parameter Description

Name Type Description
table_name string Table on which the operation was performed.
type_id string return the type_id (when changing a table, a new type may be created)
type_definition string return the type_definition (when changing a table, a new type may be created)
properties map of string to arrays of strings return the type properties (when changing a table, a new type may be created)
label string return the type label (when changing a table, a new type may be created)
column_alterations array of maps of string to strings 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'}]
info map of string to strings Additional information.