2014-12-02 65 views

回答

0

您可以像使用其他sql一樣使用它。這裏有一個例子:

using (var con = new SqlConnection(Properties.Settings.Default.ConnectionString)) 
using (var cmd = new SqlCommand("SELECT dbo.IsInteger(@value);", con)) 
{ 
    con.Open(); 
    cmd.Parameters.Add("@value", SqlDbType.VarChar).Value = "10"; 
    bool isInt = (bool)cmd.ExecuteScalar(); 
} 

dbo.IsIntegerscalar-valued function它返回一個bit(真/假)。

爲了完整起見,即使它不是真正的關係,這裏是:

CREATE Function [dbo].[IsInteger](@Value VarChar(18)) 
Returns Bit 
As 
Begin 

    Return IsNull(
    (Select Case When CharIndex('.', @Value) > 0 
        Then Case When Convert(int, ParseName(@Value, 1)) <> 0 
          Then 0 
          Else 1 
          End 
        Else 1 
        End 
     Where IsNumeric(@Value + 'e0') = 1), 0) 
End