mssql sqlserver 验证整型函数分享

 摘要:
    下文将制作一个isnumber验证整型的函数,供在sql脚本中做数值判断,如下所示:


例:
  实现原理:判断 是否包含特殊字符,是否全部为0-9的自然数组成

  CREATE FUNCTION dbo.check_number
(
/*验证一字符串类型是否为整型数值类型*/
@checkTmp VARCHAR(100)
)
RETURNS BIT
BEGIN
DECLARE @tmp BIT
IF LEFT(@checkTmp, 1) = '-'
SET @checkTmp = SUBSTRING(@checkTmp, 2, LEN(@checkTmp))
IF (PATINDEX('%[^0-9-]%', @checkTmp) = 0
AND CHARINDEX('-', @checkTmp) <= 1
AND @checkTmp NOT IN ('.', '-', '+', '^')
AND LEN(@checkTmp)>0
AND @checkTmp NOT LIKE '%-%')
SET @tmp = 1
ELSE
SET @tmp = 0
RETURN @tmp
END
GO

/*数据验证*/
SELECT '878' [测试数值],dbo.check_number('999') [测试返回值];
SELECT 'testData' [测试数值],dbo.check_number('abc') [测试返回值];
SELECT '8-8' [测试数值],dbo.check_number('9+9') [测试返回值];
SELECT '8.9' [测试数值],dbo.check_number('$9.9') [测试返回值];
SELECT 'maomao365.com' [测试数值],dbo.check_number('maomao365.com') [测试返回值];
go
drop function check_number

转自:https://www.cnblogs.com/lairui1232000/p/9476059.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
由于 SQL Server 和 MySQL 之间的函数在语法和功能上存在差异,因此不能简单地将 SQL Server 函数直接转换为 MySQL 函数。以下是一些常见的 SQL Server 函数和其在 MySQL 中的等效函数: 1. CONVERT SQL Server 中的 CONVERT 函数用于将一个数据类型转换为另一个数据类型。在 MySQL 中,可以使用 CAST 函数来完成相同的操作。例如,将一个字符串转换为日期: SQL Server:CONVERT(DATETIME, '2022-01-01') MySQL:CAST('2022-01-01' AS DATE) 2. DATEADD SQL Server 中的 DATEADD 函数用于将日期加上一定的时间间隔。在 MySQL 中,可以使用 DATE_ADD 函数完成相同的操作。例如,将一个日期加上一个月: SQL Server:DATEADD(MONTH, 1, '2022-01-01') MySQL:DATE_ADD('2022-01-01', INTERVAL 1 MONTH) 3. LEN SQL Server 中的 LEN 函数用于返回一个字符串的长度。在 MySQL 中,可以使用 LENGTH 函数完成相同的操作。例如,获取一个字符串的长度: SQL Server:LEN('hello') MySQL:LENGTH('hello') 4. GETDATE SQL Server 中的 GETDATE 函数用于返回当前日期和时间。在 MySQL 中,可以使用 NOW 函数完成相同的操作。例如,获取当前日期和时间: SQL Server:GETDATE() MySQL:NOW() 5. SUBSTRING SQL Server 中的 SUBSTRING 函数用于返回一个字符串的子串。在 MySQL 中,可以使用 SUBSTRING 函数完成相同的操作。例如,获取一个字符串的前三个字符: SQL Server:SUBSTRING('hello', 1, 3) MySQL:SUBSTRING('hello', 1, 3) 需要注意的是,SQL Server 和 MySQL 在 SUBSTRING 函数的语法上有所区别。SQL Server 的 SUBSTRING 函数接受三个参数:要从中提取子串的字符串、子串的起始位置和子串的长度。而 MySQL 的 SUBSTRING 函数接受两个参数:要从中提取子串的字符串和子串的起始位置。如果要提取的子串长度不确定,则可以将第二个参数设置为一个较大的数值,例如 10000。 综上所述,将 SQL Server 函数转换为 MySQL 函数需要针对具体的函数进行分析和转换。在转换过程中,应该注意两种数据库之间的语法和功能的差异。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值