ALTER 문

<alter statement>

<alter class statement>
| <alter trigger statement>
| <alter serial statement>

<alter class statement>

ALTER [ <class type> ] <class name> <alter clause>

<alter clause>

ADD <alter add> [ INHERIT <resolution comma list> ]
| DROP <alter drop> [ INHERIT <resolution comma list> ]
| CHANGE <alter change>
| RENAME <alter rename> [ INHERIT <resolution comma list> ]

<alter add>

CLASS ATTRIBUTE <attribute definition comma list>
| [ ATTRIBUTE | COLUMN ] <class constraint or attribute definition comma list>
| SUPERCLASS <class name comma list>
| QUERY <query statement>

<alter drop>

[ ATTRIBUTE | COLUMN ] <attribute name comma list>
| CONSTRAINT <constraint name>
| SUPERCLASS <class name comma list>

<alter change>

<attribute default comma list>
| QUERY [ <unsigned integer literal> ] <query statement>

<attribute default>

[ CLASS ] <attribute name> DEFAULT <value specification>

<alter rename>

[ ATTRIBUTE | COLUMN ] [ CLASS ] <attribute name> AS <attribute name>

<alter trigger statement>

ALTER TRIGGER <trigger name> <trigger status or priority>

<trigger status or priority>

STATUS { ACTIVE | INACTIVE }
| PRIORITY <trigger key>

<alter serial statement>

ALTER SERIAL <serial name> [ INCREMENT BY <integer literal> ] [ START WITH <integer literal> ]
[ MINVALUE <integer literal> | NOMINVALUE]
[ MAXVALUE <integer literal> | MAXVALUE] [ CYCLE | NOCYCLE ]

예제

ALTER CLASS procedings ADD SUPERCLASS reports
INHERIT editor OF reports;

ALTER CLASS employee ADD ATTRIBUTE
name string,
age integer DEFAULT 20;

ALTER CLASS employee DROP name, age;

ALTER CLASS employee CHANGE age DEFAULT 30;

ALTER CLASS employee DROP CONSTRAINT unique_age;