我正在尝试确定字段的内容是否为整数值。
在 firebird 2.5 中有“类似”,但这在 2.1 中还没有。
谢谢您的回答。
现在我会去:
substring(fieldname from 1 for 1) > '0' and
substring(fieldname from 1 for 1) < '9'
此过程使用错误处理,如果内容为整数,则按原样返回字段值,否则返回 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 ; ^