DROP LANGUAGE — 删除一个过程语言
DROP [ PROCEDURAL ] LANGUAGE [ IF EXISTS ] name [ CASCADE | RESTRICT ]
DROP LANGUAGE 删除一个先前注册的过程语言的定义。要使用 DROP LANGUAGE,你必须是超级用户或者该语言的拥有者。
从 PostgreSQL 9.1 开始,大多数过程语言已经被做成 “扩展”,因此应该使用 DROP EXTENSION 而不是 DROP LANGUAGE 来删除它们。
IF EXISTS如果语言不存在,则不会抛出错误,而是发出一个提示。
name一个现有过程语言的名称。
CASCADE自动删除依赖于该语言的对象(例如以该语言编写的函数),并进而删除所有依赖于这些对象的对象(参见 Section 5.15)。
RESTRICT如果有任何对象依赖于该语言,则拒绝删除它。这是默认行为。
这个命令将删除过程语言 plsample:
DROP LANGUAGE plsample;
SQL 标准中没有 DROP LANGUAGE 语句。