2012-05-22 57 views
0

我需要删除interbase中的“单词”之间的所有空白。来自SQL服务器背景,我假设(错误地),interbase将支持替换功能,但通常不会。因此,给定一个可能包含或不包含空格的电话号码,例如0117 565 464,如何将它与输入字符串进行匹配而没有间隔?删除interbase中的单词之间的空白空间

编辑以下意见,这是Interbase的XE,当我尝试使用替代是有错误“未知函数替换”

+0

你使用什么版本的Interbase/Firebird?根据Firebird文档,Version 2.1和更新版本支持'REPLACE'。 –

+0

我以为你说过Interbase。我在Interbase版本10中看不到任何REPLACE语句。 –

回答

2

Interbase的支持用户定义函数(UDF),这是外部包含在一个DLL编程的功能。 Interbase产品中包含许多UDF,但没有一个用于删除空白(或破折号)。但是,你可以编写你自己的并添加它。然后你可以像Interbase中的SQL语句那样使用它。

+0

听起来很酷,您用什么语言编写函数?我可以使用c#吗? –

+0

UDF都在一个或多个DLL中,并且可以用任何能够创建合适的dll的语言编写。我在德尔福写我的。那些包含在Interbase中的是用C的一些变体编写的。当然,它必须能够在你打算运行的平台上运行。然后,您只需将UDF和参数定义到Interbase。而且,是的,这很酷。 –