2015-10-15 145 views
1

我試圖確定一個字段的內容是否是一個整數值。檢查字段是否在選擇

在firebird 2.5中有「類似」,但這在2.1中尚不可用。

+0

你可以嘗試找到一個這樣做的UDF(或寫你自己的)。 –

回答

0

謝謝你的回答。

現在我會去:使用錯誤處理

substring(fieldname from 1 for 1) > '0' and 
substring(fieldname from 1 for 1) < '9' 
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 ;^