将动态共享库加载到db2服务器

时间:2012-02-06 10:23:10

标签: db2

我有一个共享库,它包含一些实用程序db2过程和函数的实现(语言C)。现在我想将这些实用程序函数从db2cmd称为

select epiProcLibVer() from sysibm.sysdummy1

为了使这些utiliy函数安装到DB2 db服务器中,我已将此共享库(libDB2CLIWrapper.so)放入<DB2InstallFolder>/sqllib/function

我已重新启动db2 instace以选择并将此库加载到数据库服务器的共享内存中。

我仍然得到以下错误@ db2 cmd如下:

db2 => select epiproclibver() from sysibm.sysdummy1 SQL0440N No authorized routine named "EPIPROCLIBVER" of type "FUNCTION" having compatible arguments was found. SQLSTATE=42884

现在我想知道将共享库加载到db2 db server是否正确?如何从sql查询访问此共享库中的函数?

1 个答案:

答案 0 :(得分:1)

这可能是一个起点?

CREATE FUNCTION epiproclibver () RETURNS INT
  EXTERNAL NAME 'libDB2CLIWrapper!epiProcLibVer'
  NOT FENCED 
  SCRATCHPAD
  VARIANT
  NO EXTERNAL ACTION
  LANGUAGE C PARAMETER STYLE DB2SQL NO SQL: