Creates or changes the storage policy of a database object by assigning it a labeled storage location. The Tuple Mover uses this location to store new and existing data for this object. If the object already has an active storage policy, calling SET_OBJECT_STORAGE_POLICY sets this object's default storage to the new labeled location. Existing data for the object is moved to the new location.

You cannot create a storage policy on a USER type storage location.


  '[[database.]schema.]object‑name', 'location‑label' 
   [,'key‑min', 'key‑max'] [, 'enforce‑storage‑move' ] ) 



Database and schema. The default schema is public. If you specify a database, it must be the current database.


Identifies the database object assigned to a labeled storage location. The object‑name can resolve to a database, schema, or table.


The label of object‑name's storage location.


Valid only if object‑name is a table, specifies the range of table partition key values to store at the labeled location.


Specifies when the Tuple Mover moves all existing storage containers for object‑name to the labeled storage location:

  • false (default): Move storage containers only after all pending mergeout tasks return.
  • true: Immediately move all storage containers to the new location.

You can also enforce all storage policies immediately by calling Vertica meta-function ENFORCE_OBJECT_STORAGE_POLICY


One of the following:

  • Superuser
  • Object owner and access to its storage location.


See Clearing Storage Policies