Oracle ALTER TABLE Statement

In Oracle, ALTER TABLE statement specifies how to add, modify, drop or delete columns in a table. It is also used to rename a table.

How to add column in a table

Syntax:

snippet
ALTER TABLE table_name
  ADD column_name column-definition;

Example:

Consider that already existing table customers. Now, add a new column customer_age into the table customers.

snippet
ALTER TABLE customers
  ADD customer_age varchar2(50);

Now, a new column "customer_age" will be added in customers table.

How to add multiple columns in the existing table

Syntax:

snippet
ALTER TABLE table_name
  ADD (column_1 column-definition,
       column_2 column-definition,
       ...
       column_n column_definition);

Example

snippet
ALTER TABLE customers
  ADD (customer_type varchar2(50),
       customer_address varchar2(50));
Output
Now, two columns customer_type and customer_address will be added in the table customers.

How to modify column of a table

Syntax:

snippet
ALTER TABLE table_name
  MODIFY column_name column_type;

Example:

snippet
ALTER TABLE customers
  MODIFY customer_name varchar2(100) not null;
Output
Now the column column_name in the customers table is modified to varchar2 (100) and forced the column to not allow null values.

How to modify multiple columns of a table

Syntax:

snippet
ALTER TABLE table_name
  MODIFY (column_1 column_type,
          column_2 column_type,
          ...
          column_n column_type);

Example:

snippet
ALTER TABLE customers
  MODIFY (customer_name varchar2(100) not null,
          city varchar2(100));
Output
This will modify both the customer_name and city columns in the table.

How to drop column of a table

Syntax:

snippet
ALTER TABLE table_name
  DROP COLUMN column_name;

Example:

snippet
ALTER TABLE customers
  DROP COLUMN customer_name;
Output
This will drop the customer_name column from the table.

How to rename column of a table

Syntax:

snippet
ALTER TABLE table_name
  RENAME COLUMN old_name to new_name;

Example:

snippet
ALTER TABLE customers
 RENAME COLUMN customer_name to cname;
Output
This will rename the column customer_name into cname.

How to rename table

Syntax:

snippet
ALTER TABLE table_name
  RENAME TO new_table_name;

Example:

snippet
ALTER TABLE customers
RENAME TO retailers;
Output
This will rename the customer table into "retailers" table.
Related Tutorial
Follow Us
https://www.facebook.com/Rookie-Nerd-638990322793530 https://twitter.com/RookieNerdTutor https://plus.google.com/b/117136517396468545840 #
Contents