@@ -218,7 +218,7 @@ static Node *makeRecursiveViewSelect(char *relname, List *aliases, Node *query);
218
218
AlterDatabaseStmt AlterDatabaseSetStmt AlterDomainStmt AlterEnumStmt
219
219
AlterFdwStmt AlterForeignServerStmt AlterGroupStmt
220
220
AlterObjectSchemaStmt AlterOwnerStmt AlterSeqStmt AlterSystemStmt AlterTableStmt
221
- AlterExtensionStmt AlterExtensionContentsStmt AlterForeignTableStmt
221
+ AlterTblSpcStmt AlterExtensionStmt AlterExtensionContentsStmt AlterForeignTableStmt
222
222
AlterCompositeTypeStmt AlterUserStmt AlterUserMappingStmt AlterUserSetStmt
223
223
AlterRoleStmt AlterRoleSetStmt
224
224
AlterDefaultPrivilegesStmt DefACLAction
@@ -728,6 +728,7 @@ stmt :
728
728
| AlterSeqStmt
729
729
| AlterSystemStmt
730
730
| AlterTableStmt
731
+ | AlterTblSpcStmt
731
732
| AlterCompositeTypeStmt
732
733
| AlterRoleSetStmt
733
734
| AlterRoleStmt
@@ -6934,6 +6935,128 @@ opt_force: FORCE { $$ = TRUE; }
6934
6935
;
6935
6936
6936
6937
6938
+ /* ****************************************************************************
6939
+ *
6940
+ * ALTER TABLESPACE
6941
+ *
6942
+ *****************************************************************************/
6943
+
6944
+ AlterTblSpcStmt : ALTER TABLESPACE name MOVE ALL TO name opt_nowait
6945
+ {
6946
+ AlterTableSpaceMoveStmt *n =
6947
+ makeNode (AlterTableSpaceMoveStmt);
6948
+ n->orig_tablespacename = $3 ;
6949
+ n->objtype = -1 ;
6950
+ n->move_all = true ;
6951
+ n->roles = NIL;
6952
+ n->new_tablespacename = $7 ;
6953
+ n->nowait = $8 ;
6954
+ $$ = (Node *)n;
6955
+ }
6956
+ | ALTER TABLESPACE name MOVE TABLES TO name opt_nowait
6957
+ {
6958
+ AlterTableSpaceMoveStmt *n =
6959
+ makeNode (AlterTableSpaceMoveStmt);
6960
+ n->orig_tablespacename = $3 ;
6961
+ n->objtype = OBJECT_TABLE;
6962
+ n->move_all = false ;
6963
+ n->roles = NIL;
6964
+ n->new_tablespacename = $7 ;
6965
+ n->nowait = $8 ;
6966
+ $$ = (Node *)n;
6967
+ }
6968
+ | ALTER TABLESPACE name MOVE INDEXES TO name opt_nowait
6969
+ {
6970
+ AlterTableSpaceMoveStmt *n =
6971
+ makeNode (AlterTableSpaceMoveStmt);
6972
+ n->orig_tablespacename = $3 ;
6973
+ n->objtype = OBJECT_INDEX;
6974
+ n->move_all = false ;
6975
+ n->roles = NIL;
6976
+ n->new_tablespacename = $7 ;
6977
+ n->nowait = $8 ;
6978
+ $$ = (Node *)n;
6979
+ }
6980
+ | ALTER TABLESPACE name MOVE MATERIALIZED VIEWS TO name opt_nowait
6981
+ {
6982
+ AlterTableSpaceMoveStmt *n =
6983
+ makeNode (AlterTableSpaceMoveStmt);
6984
+ n->orig_tablespacename = $3 ;
6985
+ n->objtype = OBJECT_MATVIEW;
6986
+ n->move_all = false ;
6987
+ n->roles = NIL;
6988
+ n->new_tablespacename = $8 ;
6989
+ n->nowait = $9 ;
6990
+ $$ = (Node *)n;
6991
+ }
6992
+ | ALTER TABLESPACE name MOVE ALL OWNED BY role_list TO name opt_nowait
6993
+ {
6994
+ AlterTableSpaceMoveStmt *n =
6995
+ makeNode (AlterTableSpaceMoveStmt);
6996
+ n->orig_tablespacename = $3 ;
6997
+ n->objtype = -1 ;
6998
+ n->move_all = true ;
6999
+ n->roles = $8 ;
7000
+ n->new_tablespacename = $10 ;
7001
+ n->nowait = $11 ;
7002
+ $$ = (Node *)n;
7003
+ }
7004
+ | ALTER TABLESPACE name MOVE TABLES OWNED BY role_list TO name opt_nowait
7005
+ {
7006
+ AlterTableSpaceMoveStmt *n =
7007
+ makeNode (AlterTableSpaceMoveStmt);
7008
+ n->orig_tablespacename = $3 ;
7009
+ n->objtype = OBJECT_TABLE;
7010
+ n->move_all = false ;
7011
+ n->roles = $8 ;
7012
+ n->new_tablespacename = $10 ;
7013
+ n->nowait = $11 ;
7014
+ $$ = (Node *)n;
7015
+ }
7016
+ | ALTER TABLESPACE name MOVE INDEXES OWNED BY role_list TO name opt_nowait
7017
+ {
7018
+ AlterTableSpaceMoveStmt *n =
7019
+ makeNode (AlterTableSpaceMoveStmt);
7020
+ n->orig_tablespacename = $3 ;
7021
+ n->objtype = OBJECT_INDEX;
7022
+ n->move_all = false ;
7023
+ n->roles = $8 ;
7024
+ n->new_tablespacename = $10 ;
7025
+ n->nowait = $11 ;
7026
+ $$ = (Node *)n;
7027
+ }
7028
+ | ALTER TABLESPACE name MOVE MATERIALIZED VIEWS OWNED BY role_list TO name opt_nowait
7029
+ {
7030
+ AlterTableSpaceMoveStmt *n =
7031
+ makeNode (AlterTableSpaceMoveStmt);
7032
+ n->orig_tablespacename = $3 ;
7033
+ n->objtype = OBJECT_MATVIEW;
7034
+ n->move_all = false ;
7035
+ n->roles = $9 ;
7036
+ n->new_tablespacename = $11 ;
7037
+ n->nowait = $12 ;
7038
+ $$ = (Node *)n;
7039
+ }
7040
+ | ALTER TABLESPACE name SET reloptions
7041
+ {
7042
+ AlterTableSpaceOptionsStmt *n =
7043
+ makeNode (AlterTableSpaceOptionsStmt);
7044
+ n->tablespacename = $3 ;
7045
+ n->options = $5 ;
7046
+ n->isReset = FALSE ;
7047
+ $$ = (Node *)n;
7048
+ }
7049
+ | ALTER TABLESPACE name RESET reloptions
7050
+ {
7051
+ AlterTableSpaceOptionsStmt *n =
7052
+ makeNode (AlterTableSpaceOptionsStmt);
7053
+ n->tablespacename = $3 ;
7054
+ n->options = $5 ;
7055
+ n->isReset = TRUE ;
7056
+ $$ = (Node *)n;
7057
+ }
7058
+ ;
7059
+
6937
7060
/* ****************************************************************************
6938
7061
*
6939
7062
* ALTER THING name RENAME TO newname
@@ -7322,120 +7445,6 @@ RenameStmt: ALTER AGGREGATE func_name aggr_args RENAME TO name
7322
7445
n->missing_ok = false ;
7323
7446
$$ = (Node *)n;
7324
7447
}
7325
- | ALTER TABLESPACE name MOVE ALL TO name opt_nowait
7326
- {
7327
- AlterTableSpaceMoveStmt *n =
7328
- makeNode (AlterTableSpaceMoveStmt);
7329
- n->orig_tablespacename = $3 ;
7330
- n->objtype = -1 ;
7331
- n->move_all = true ;
7332
- n->roles = NIL;
7333
- n->new_tablespacename = $7 ;
7334
- n->nowait = $8 ;
7335
- $$ = (Node *)n;
7336
- }
7337
- | ALTER TABLESPACE name MOVE TABLES TO name opt_nowait
7338
- {
7339
- AlterTableSpaceMoveStmt *n =
7340
- makeNode (AlterTableSpaceMoveStmt);
7341
- n->orig_tablespacename = $3 ;
7342
- n->objtype = OBJECT_TABLE;
7343
- n->move_all = false ;
7344
- n->roles = NIL;
7345
- n->new_tablespacename = $7 ;
7346
- n->nowait = $8 ;
7347
- $$ = (Node *)n;
7348
- }
7349
- | ALTER TABLESPACE name MOVE INDEXES TO name opt_nowait
7350
- {
7351
- AlterTableSpaceMoveStmt *n =
7352
- makeNode (AlterTableSpaceMoveStmt);
7353
- n->orig_tablespacename = $3 ;
7354
- n->objtype = OBJECT_INDEX;
7355
- n->move_all = false ;
7356
- n->roles = NIL;
7357
- n->new_tablespacename = $7 ;
7358
- n->nowait = $8 ;
7359
- $$ = (Node *)n;
7360
- }
7361
- | ALTER TABLESPACE name MOVE MATERIALIZED VIEWS TO name opt_nowait
7362
- {
7363
- AlterTableSpaceMoveStmt *n =
7364
- makeNode (AlterTableSpaceMoveStmt);
7365
- n->orig_tablespacename = $3 ;
7366
- n->objtype = OBJECT_MATVIEW;
7367
- n->move_all = false ;
7368
- n->roles = NIL;
7369
- n->new_tablespacename = $8 ;
7370
- n->nowait = $9 ;
7371
- $$ = (Node *)n;
7372
- }
7373
- | ALTER TABLESPACE name MOVE ALL OWNED BY role_list TO name opt_nowait
7374
- {
7375
- AlterTableSpaceMoveStmt *n =
7376
- makeNode (AlterTableSpaceMoveStmt);
7377
- n->orig_tablespacename = $3 ;
7378
- n->objtype = -1 ;
7379
- n->move_all = true ;
7380
- n->roles = $8 ;
7381
- n->new_tablespacename = $10 ;
7382
- n->nowait = $11 ;
7383
- $$ = (Node *)n;
7384
- }
7385
- | ALTER TABLESPACE name MOVE TABLES OWNED BY role_list TO name opt_nowait
7386
- {
7387
- AlterTableSpaceMoveStmt *n =
7388
- makeNode (AlterTableSpaceMoveStmt);
7389
- n->orig_tablespacename = $3 ;
7390
- n->objtype = OBJECT_TABLE;
7391
- n->move_all = false ;
7392
- n->roles = $8 ;
7393
- n->new_tablespacename = $10 ;
7394
- n->nowait = $11 ;
7395
- $$ = (Node *)n;
7396
- }
7397
- | ALTER TABLESPACE name MOVE INDEXES OWNED BY role_list TO name opt_nowait
7398
- {
7399
- AlterTableSpaceMoveStmt *n =
7400
- makeNode (AlterTableSpaceMoveStmt);
7401
- n->orig_tablespacename = $3 ;
7402
- n->objtype = OBJECT_INDEX;
7403
- n->move_all = false ;
7404
- n->roles = $8 ;
7405
- n->new_tablespacename = $10 ;
7406
- n->nowait = $11 ;
7407
- $$ = (Node *)n;
7408
- }
7409
- | ALTER TABLESPACE name MOVE MATERIALIZED VIEWS OWNED BY role_list TO name opt_nowait
7410
- {
7411
- AlterTableSpaceMoveStmt *n =
7412
- makeNode (AlterTableSpaceMoveStmt);
7413
- n->orig_tablespacename = $3 ;
7414
- n->objtype = OBJECT_MATVIEW;
7415
- n->move_all = false ;
7416
- n->roles = $9 ;
7417
- n->new_tablespacename = $11 ;
7418
- n->nowait = $12 ;
7419
- $$ = (Node *)n;
7420
- }
7421
- | ALTER TABLESPACE name SET reloptions
7422
- {
7423
- AlterTableSpaceOptionsStmt *n =
7424
- makeNode (AlterTableSpaceOptionsStmt);
7425
- n->tablespacename = $3 ;
7426
- n->options = $5 ;
7427
- n->isReset = FALSE ;
7428
- $$ = (Node *)n;
7429
- }
7430
- | ALTER TABLESPACE name RESET reloptions
7431
- {
7432
- AlterTableSpaceOptionsStmt *n =
7433
- makeNode (AlterTableSpaceOptionsStmt);
7434
- n->tablespacename = $3 ;
7435
- n->options = $5 ;
7436
- n->isReset = TRUE ;
7437
- $$ = (Node *)n;
7438
- }
7439
7448
| ALTER TEXT_P SEARCH PARSER any_name RENAME TO name
7440
7449
{
7441
7450
RenameStmt *n = makeNode(RenameStmt);
0 commit comments