### 13.1.4 ALTER FUNCTION 语句

[](<>)

```
ALTER FUNCTION func_name [characteristic ...]

characteristic: {
    COMMENT 'string'
  | LANGUAGE SQL
  | { CONTAINS SQL | NO SQL | READS SQL DATA | MODIFIES SQL DATA }
  | SQL SECURITY { DEFINER | INVOKER }
}
```

此语句可用于更改存储函数的特性。可以在一个文件中指定多个更改[`改变功能`](alter-function.html)陈述。但是，您不能使用此语句更改存储函数的参数或主体；要进行此类更改，您必须使用删除并重新创建函数[`拖放功能`](drop-function.html)和[`创建函数`](create-function.html).

你必须拥有[`改变常规`](privileges-provided.html#priv_alter-routine)该功能的特权。（该权限会自动授予函数创建者。）如果启用了二进制日志记录，则[`改变功能`](alter-function.html)声明可能还需要[`极好的`](privileges-provided.html#priv_super)特权，如中所述[第 25.7 节，“存储程序二进制日志”](stored-programs-logging.html).
