This form marks the function as dependent on the extension, or no longer
dependent on that extension if NO is specified.
- A function that's marked as dependent on an extension is automatically
- dropped when the extension is dropped.
+ A function that's marked as dependent on an extension is dropped when the
+ extension is dropped, even if CASCADE is not specified.
+ A function can depend upon multiple extensions, and will be dropped when
+ any one of those extensions is dropped.
extension_name
- The name of the extension that the procedure is to depend on.
+ This form marks the procedure as dependent on the extension, or no longer
+ dependent on the extension if NO is specified.
+ A procedure that's marked as dependent on an extension is dropped when the
+ extension is dropped, even if cascade is not specified.
+ A procedure can depend upon multiple extensions, and will be dropped when
+ any one of those extensions is dropped.
DROP EXTENSION removes extensions from the database.
- Dropping an extension causes its component objects to be dropped as well.
+ Dropping an extension causes its component objects, and other explicitly
+ dependent routines (see ,
+ the depends on extension action), to be dropped as well.
RESTRICT
- Refuse to drop the extension if any objects depend on it (other than
- its own member objects and other extensions listed in the same
- DROP command). This is the default.
+ This option prevents the specified extensions from being dropped
+ if there exists non-extension-member objects that depends on any
+ the extensions. This is the default.