---
name: "REASSIGN_OWNED"
section: "7"
platform: "linux"
package: "postgresql"
version: "18.6-4"
release: "Arch Linux 2026-11-01"
platforms: ["linux"]
url: "https://new.carta.tech/REASSIGN_OWNED"
---

# REASSIGN\_OWNED(7)

change the ownership of database objects owned by a database role

## NAME

REASSIGN\_OWNED - change the ownership of database objects owned by a database role

## SYNOPSIS

```
REASSIGN OWNED BY { old_role | CURRENT_ROLE | CURRENT_USER | SESSION_USER } [, ...]
               TO { new_role | CURRENT_ROLE | CURRENT_USER | SESSION_USER }
```

## DESCRIPTION

**REASSIGN OWNED** instructs the system to change the ownership of database objects owned by any of the *old\_roles* to *new\_role*.

## PARAMETERS

*old\_role*

The name of a role. The ownership of all the objects within the current database, and of all shared objects (databases, tablespaces), owned by this role will be reassigned to *new\_role*.

*new\_role*

The name of the role that will be made the new owner of the affected objects.

## NOTES

**REASSIGN OWNED** is often used to prepare for the removal of one or more roles. Because **REASSIGN OWNED** does not affect objects within other databases, it is usually necessary to execute this command in each database that contains objects owned by a role that is to be removed.

**REASSIGN OWNED** requires membership on both the source role(s) and the target role.

The **DROP OWNED** command is an alternative that simply drops all the database objects owned by one or more roles.

The **REASSIGN OWNED** command does not affect any privileges granted to the *old\_roles* on objects that are not owned by them. Likewise, it does not affect default privileges created with **ALTER DEFAULT PRIVILEGES**. Use **DROP OWNED** to revoke such privileges.

See Section 21.4 for more discussion.

## COMPATIBILITY

The **REASSIGN OWNED** command is a PostgreSQL extension.

## SEE ALSO

DROP OWNED ([**DROP\_OWNED**(7)](/DROP_OWNED/7.md)), DROP ROLE ([**DROP\_ROLE**(7)](/DROP_ROLE/7.md)), ALTER DATABASE ([**ALTER\_DATABASE**(7)](/ALTER_DATABASE/7.md))
