累积智商' udf指南,
创建udf程序如下:
使用CREATE FUNCTION或CREATE AGGREGATE FUNCTION将UDF声明到服务器
编写UDF库标识函数
将UDF定义为一组C或C ++函数。
在C / C ++中实现函数入口点。
- 编译UDF函数和库标识函数
- 将已编译的文件链接到可动态链接的库中。
醇>
在我完成所有过程之后,在Interactice SQL中声明CREATE FUNCTION,我调用函数并得到错误响应如下:
`
无法执行声明。
无法找到' my_sample_function'在动态库&libudfex.so' SQLCODE = -621,ODBC 3状态=" HY000"第1行,第1列SELECT my_sample_function(test.a,test.b)as aaa from test WHERE test.a = 3
`
答案 0 :(得分:0)
在编译和链接动态可链接库之后,完成以下任务之一:
1.(推荐)更新CREATE FUNCTION ... EXTERNAL NAME以包含UDF库的显式路径名。 将UDF库文件放入存储所有IQ库的目录中。
2.使用包含UDF库位置的库加载路径启动IQ服务器。
3.在UNIX上修改start_iq启动脚本中的LD_LIBRARY_PATH。虽然LD_LIBRARY_PATH对所有UNIX变体都是通用的,但HP上首选SHLIB_PATH,而AIX上首选LIB_PATH。
也许你错过了这一步