您的位置:首页 > 数据库 > Oracle

Oracle alter table add column example

2014-01-06 11:26 861 查看

Oracle Tips by Burleson Consulting

We have "alter table" syntax from Oracle to add data columns in-place in this form:

alter table

table_name

add

(

column1_name column1_datatype column1_constraint,

column2_name column2_datatype column2_constraint,

column3_name column3_datatype column3_constraint

);

Here are some examples of Oracle "alter table" syntax to add data columns.

alter table

cust_table

add

cust_sex varchar2(1) NOT NULL;

Her is an example of Oracle "alter table" syntax to add multiple data columns.

ALTER TABLE

cust_table

ADD

(

cust_sex char(1) NOT NULL,

cust_credit_rating number

);

Sometimes, we find that a piece of data that we did not maintain becomes important, and we need to add a new table column to the database. We can add a table to hold the new data or add it to our current schema by adding a column to a current table.

For example, we discover that we need to keep a record of the last date that each author published and what they published. We need to add two columns to the author table,author_last_published (a date) and author_item_published (a varchar2(40)). To do this,
we use the ALTER TABLE ADD command.

SQL> alter table author add (author_last_published date);

Table altered.

SQL> alter table author add (author_item_published varchar2(40));

Table altered.

SQL> desc author

Name Null? Type

------------------------------------- -------- ------------------AUTHOR_KEY VARCHAR2(11)

. . .

AUTHOR_ITEM_PUBLISHED VARCHAR2(40)

Notice that the new columns are at the end of the AUTHOR table. All current rows in the table now contain NULLs for the new columns.

I added each column separately, but you can add as many columns as needed in one command by separating them with commas.

alter table

author

add

(author_last_published date,

author_item_published varchar2(40));

If I define a default value for the new columns, all the current columns will have the default value. (I dropped and recreated the original author table.)

SQL> alter table author add (

2 author_last_published date default SYSDATE,

3 author_item_published varchar2(40)

4 default 'Magazine Article' not null

5 );

Table altered.
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: