更改功能 - Informix DB

时间:2015-05-07 14:12:07

标签: sql informix

我是Informix世界的新手。这可能是一个愚蠢的问题,但浪费了几个小时。如何在Informix数据库中修改或更新用户定义的函数?试过以下查询:

ALTER FUNCTION function_name().....

它没有工作:(。我收到语法错误。

2 个答案:

答案 0 :(得分:2)

遗憾的是,不存在alter function来更改Informix数据库的主体。 您需要删除并再次创建它。

注意,在重新创建函数之前保存授权之前复制它们,并确保没有在创建它的会话中设置pdqpriority。

答案 1 :(得分:2)

如果您访问Informix 12.10信息中心并查看可用的SQL statements,您会发现ALTER FUNCTION语句允许您更改用户定义函数的特征,或更改提供函数定义的共享对象,但是您无法更改SPL(存储过程语言)函数的主体。为此,您必须使用DROP FUNCTION(或DROP PROCEDURE),然后使用相应的CREATE FUNCTIONCREATE PROCEDURE

并且,正如ceinmartanswer中指出的那样,您需要担心在删除并重新创建函数后重新创建该函数的权限。