1

我正在尝试确定字段的内容是否为整数值。

在 firebird 2.5 中有“类似”,但这在 2.1 中还没有。

4

2 回答 2

0

谢谢您的回答。

现在我会去:

substring(fieldname from 1 for 1) > '0' and 
substring(fieldname from 1 for 1) < '9' 
于 2015-10-15T10:56:02.403 回答
0

此过程使用错误处理,如果内容为整数,则按原样返回字段值,否则返回 0

SET TERM ^ ;

create or alter procedure INT_CHECK (
    IN_STR varchar(100))
returns (
    ORESULT integer)
as
BEGIN
  /* because WHEN works for the entire block use a separate BEGIN..END*/
  begin  -- START OF BLOCK
  oresult = cast(:in_str as integer);
  when any do
      begin
        oresult = 0;
      end
  end    -- END OF BLOCK
  suspend;
END^

SET TERM ; ^
于 2015-10-15T12:21:06.910 回答