* Alvaro Herrera (alvhe...@2ndquadrant.com) wrote: > Stephen Frost wrote: > > > Any further thoughts on this? I haven't tried to go implement anything > > yet but I'm definitely concerned that we may run into a keyword issue > > with ALTER TABLE, but I don't really want to add 'TABLES' either. > > Anyone have any other suggestions or ideas? > > I thought that the suggestion to use MOVE was the most appropriate. > However I also concur that re-using MOVE from its current cursor-related > meaning would be troublesome from several PoVs, so if there's a synonym > of MOVE that we can use, that'd probably be better. I don't like ALTER > TABLES myself; and having an ALTER TABLE command that affects several > tables seems counterintuitive as well. > > How about > RELOCATE ALL [ TABLES | INDEXES | ... ] IN TABLESPACE foo TO bar > ?
The original call for this change was to have it return the command tag of ALTER TABLE, wasn't it? Would inventing a new command tag like RELOCATE actually improve the situation..? Or is the thought that it'd still be ALTER TABLE? That it's more-or-less a bulk 'ALTER TABLE' operation is why I had been trying to think of a way to put it under that command. What if we had a more general way to reference 'all objects in a tablespace'? "tablespace.*" or "ALL:TABLESAPCE"? Are there other places which might benefit from being able to take and operate on all objects in a tablespace? Of course, we handle this in 'GRANT' with 'GRANT ON ALL TABLES', so why not 'ALTER TABLE ON ALL TABLES IN TABLESPACE <blah>'? that does get pretty darn verbose but is at least a bit more in-line with what we have done before.. Thanks, Stephen
signature.asc
Description: Digital signature