mirror of
https://github.com/postgres/postgres.git
synced 2025-06-25 01:02:05 +03:00
Implement ALTER TABLE .. SET LOGGED / UNLOGGED
This enables changing permanent (logged) tables to unlogged and vice-versa. (Docs for ALTER TABLE / SET TABLESPACE got shuffled in an order that hopefully makes more sense than the original.) Author: Fabrízio de Royes Mello Reviewed by: Christoph Berg, Andres Freund, Thom Brown Some tweaking by Álvaro Herrera
This commit is contained in:
@ -577,7 +577,7 @@ static Node *makeRecursiveViewSelect(char *relname, List *aliases, Node *query);
|
||||
|
||||
LABEL LANGUAGE LARGE_P LAST_P LATERAL_P
|
||||
LEADING LEAKPROOF LEAST LEFT LEVEL LIKE LIMIT LISTEN LOAD LOCAL
|
||||
LOCALTIME LOCALTIMESTAMP LOCATION LOCK_P
|
||||
LOCALTIME LOCALTIMESTAMP LOCATION LOCK_P LOGGED
|
||||
|
||||
MAPPING MATCH MATERIALIZED MAXVALUE MINUTE_P MINVALUE MODE MONTH_P MOVE
|
||||
|
||||
@ -2114,6 +2114,20 @@ alter_table_cmd:
|
||||
n->name = NULL;
|
||||
$$ = (Node *)n;
|
||||
}
|
||||
/* ALTER TABLE <name> SET LOGGED */
|
||||
| SET LOGGED
|
||||
{
|
||||
AlterTableCmd *n = makeNode(AlterTableCmd);
|
||||
n->subtype = AT_SetLogged;
|
||||
$$ = (Node *)n;
|
||||
}
|
||||
/* ALTER TABLE <name> SET UNLOGGED */
|
||||
| SET UNLOGGED
|
||||
{
|
||||
AlterTableCmd *n = makeNode(AlterTableCmd);
|
||||
n->subtype = AT_SetUnLogged;
|
||||
$$ = (Node *)n;
|
||||
}
|
||||
/* ALTER TABLE <name> ENABLE TRIGGER <trig> */
|
||||
| ENABLE_P TRIGGER name
|
||||
{
|
||||
@ -12963,6 +12977,7 @@ unreserved_keyword:
|
||||
| LOCAL
|
||||
| LOCATION
|
||||
| LOCK_P
|
||||
| LOGGED
|
||||
| MAPPING
|
||||
| MATCH
|
||||
| MATERIALIZED
|
||||
|
Reference in New Issue
Block a user