ADD COLUMN 절

설명

ADD COLUMN 절을 사용하여 새로운 컬럼을 추가할 수 있다. FIRST 또는 AFTER 키워드를 사용하여 새로 추가할 컬럼의 위치를 지정할 수 있다.

구문

ALTER [ TABLE | CLASS | VCLASS | VIEW ] table_name

ADD [ COLUMN | ATTRIBUTE ] [(]<column_definition>[)] [ FIRST | AFTER old_column_name ]

 

column_definition ::=

column_name column_type

    { [ NOT NULL | NULL ] |

      [ { SHARED <value_specification> | DEFAULT <value_specification> }

          | AUTO_INCREMENT [(seed, increment)] ] |

      [ UNIQUE [ KEY ] |

          [ PRIMARY KEY | FOREIGN KEY REFERENCES

              [ referenced_table_name ]( column_name_comma_list )

              [ <referential_triggered_action> ... ]

          ]

      ] } ...

 

<referential_triggered_action> ::=

{ ON UPDATE <referential_action> } |

{ ON DELETE <referential_action> } |

{ ON CACHE OBJECT cache_object_column_name }

 

<referential_action> ::=

CASCADE | RESTRICT | NO ACTION | SET NULL

예제

CREATE TABLE a_tbl;

ALTER TABLE a_tbl ADD COLUMN age INT DEFAULT 0 NOT NULL;

INSERT INTO a_tbl(age) VALUES(20),(30),(40);

ALTER TABLE a_tbl ADD COLUMN name VARCHAR FIRST;

ALTER TABLE a_tbl ADD COLUMN id INT NOT NULL AUTO_INCREMENT UNIQUE;

ALTER TABLE a_tbl ADD COLUMN phone VARCHAR(13) DEFAULT '000-0000-0000' AFTER name;

 

SELECT * FROM a_tbl;

csql> ;xr

 

=== <Result of SELECT Command in Line 1> ===

 

  name                  phone                         age           id

======================================================================

  NULL                  '000-0000-0000'                20         NULL

  NULL                  '000-0000-0000'                30         NULL

  NULL                  '000-0000-0000'                40         NULL

 

--adding multiple columns

ALTER TABLE a_tbl ADD COLUMN (age1 int, age2 int, age3 int);

;xr

 

1 command(s) successfully processed.