> On Jan 26, 2026, at 12:36, David G. Johnston <[email protected]> 
> wrote:
> 
> On Sunday, January 25, 2026, Chao Li <[email protected]> wrote:
> 
> >      <para>
> >       When applied to a partitioned table, partition columns and constraints
> >       are implicitly renamed.
> >       Specifying <literal>ONLY</literal> is not allowed, and this command
> >       cannot be used on individual partitions.
> >      </para>
> 
> But for "Specifying <literal>ONLY</literal> is not allowed, and this command, 
> cannot be used on individual partitions.”, that doesn’t seem correct. See my 
> test:
> ```
> evantest=# create table root (i int, j int) partition by list(i);
> CREATE TABLE
> evantest=# create table p1 partition of root for values in (1);
> CREATE TABLE
> evantest=# alter table p1 rename to pp1; <== Rename a partition is allowed.
> ALTER TABLE
> evantest=# alter table only pp1 rename to p1; <== ONLY can be used, but just 
> no effect
> ALTER TABLE
> ```
> 
> I was mentally restricting the second sentence about ONLY to the column and 
> constraints renaming action, which are called out by the first sentence.  It 
> makes little sense to talk about renaming the table, parent or child, here in 
> the context of ONLY.  It goes without mention that table renaming never 
> cascades.  Only is implied for that action, even if only should just be 
> considered valid on a parent in any case.
> 
> But I’d accept a sentence like: “Table renames always only apply to the named 
> table.” Added to that paragraph; it’s a convoluted command.
> 
> David J.
> 

How about this:
```
<para>
 When applied to a partitioned table to rename columns or constraints,
 the corresponding partition columns and constraints are renamed
 implicitly. <literal>ONLY</literal> is not allowed, and the command
 cannot be used on individual partitions. When the rename target is the
 table name, only the named table is renamed.
</para>
```

Best regards,
--
Chao Li (Evan)
HighGo Software Co., Ltd.
https://www.highgo.com/






Reply via email to