9

我使用 Firebird 的substring函数在机器上创建了一个视图,并且它起作用了。当我将数据库复制到另一台机器时,视图被破坏了。这是我使用它的方式:

SELECT SUBSTRING(field FROM 5 FOR 15) FROM table;

这是不接受该功能的机器上的输出:

token unknown:  FROM

两台电脑都有这样的配置:

  • IB Expert版本 2.5.0.42 运行查询和处理数据库。
  • Firebird 1.5 版作为服务器到数据库。
  • 安装了BDE 管理版本 5.01,带有Interbase 4.0 驱动程序。

关于为什么它在这些机器上表现不同的任何想法?

4

2 回答 2

2
  1. 确保 Firebird 引擎是 1.5,并且在您期望 Firebird 1.5 的端口上的同一个盒子上没有运行 InterBase 服务器。

  2. 确保您没有在此数据库中注册任何名为“子字符串”的 UDF,以便 Firebird 期待不同的参数。

于 2008-09-15T17:44:39.363 回答
0

Different engine versions?

Have you tried naming that expression in the result?

SELECT SUBSTRING(field FROM 5 FOR 15) AS x FROM table;
于 2008-08-07T18:55:37.363 回答