非interbase高手莫入(200分)(200分)

  • 主题发起人 主题发起人 huifi
  • 开始时间 开始时间
H

huifi

Unregistered / Unconfirmed
GUEST, unregistred user!
数据库要用到UDF(ib_udf.dll)中的SUBSTR函数,在IBConsole中的Interactive SQL中执行
DECLARE EXTERNAL FUNCTION SUBSTR
CSTRING(80), SMALLINT, SMALLINT
RETURNS CSTRING(80) FREE_IT
ENTRY_POINT 'IB_UDF_substr' MODULE_NAME 'ib_udf.dll';
注册函数通过,但是执行
select substr(field1,1,4),field2 from table1
时出错:
Invalid request BLR at offset 81
function SUBSTR is not defined
module name or entrypoint could not be found
如何解决,请各位大虾帮帮忙,我对interbase不是很通!!!!
分数还可再加!!!!!!!
 
补充一下,我用interbase6.5,www.3asoft.com上下的。
 
你可以先把你的DLL中的函数拿到程序中试试,看看是否正常的。
这个你试试几遍就行了。
//我不是INTERBASE的高手哟。
 
to:hbezwwl
我在DELPHI6K中用IBX控件试过了,出现同样的错误
谢谢!!!!
 
好像INTERBASE的带的帮助中有这些函数的调用帮助的,你看看。
 
INTERBASE中调用UDF需将ib_util.dll拷至win/system或nt/system32中即可,另推荐一个
IB网站:www.3asoft.com,里面有个IB论坛,感觉还可以,有问题可以到那儿看看。
给分先!!!
 
udf要拷贝到ibserver安装目录的udf目录下.老版本拷贝到bin目录下
 
还要注意一定,函数名跟表名字段名一样都是标识.一定要大写
如果小写要用""括起来
select "substr"(field1,1,4),field2 from table1
 
多人接受答案了。
 
后退
顶部