在MS SQL中处理用户输入的数值是否为Integer,为了简化程序代码,可以使用下面函数。
IsIntegerCREATE FUNCTION [dbo].[IsInteger]
(
@Value NVARCHAR(4000)
) RETURNS NVARCHAR(4000)
AS
BEGIN
DECLARE @ResultValue BIT = 1
--如果IS NULL把值设为N''
SET @Value = ISNULL(LTRIM(@Value), N'')
--处理前导N'-'字符串,如果有,把它移除,这样才好做以下的判断。
SET @Value = CASE WHEN SUBSTRING(@Value, 1, 1) = N'-' THEN SUBSTRING(@Value, 2, LEN(@Value) - 1) ELSE @Value END
--如不是数据或为N''返加Faluse
IF @Value LIKE '%[^0-9]%' OR @Value = N''
SET @ResultValue = 0
RETURN @ResultValue
END
点击查看更多内容
为 TA 点赞
评论
共同学习,写下你的评论
评论加载中...
作者其他优质文章
正在加载中
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦