代码语言
.
CSharp
.
JS
Java
Asp.Net
C
MSSQL
PHP
Css
PLSQL
Python
Shell
EBS
ASP
Perl
ObjC
VB.Net
VBS
MYSQL
GO
Delphi
AS
DB2
Domino
Rails
ActionScript
Scala
代码分类
文件
系统
字符串
数据库
网络相关
图形/GUI
多媒体
算法
游戏
Jquery
Extjs
Android
HTML5
菜单
网页交互
WinForm
控件
企业应用
安全与加密
脚本/批处理
开放平台
其它
【
MSSQL
】
验证身份证号完美版(SQL)
作者:
鑫炫
/ 发布于
2017/11/20
/
1538
USE [master] GO /****** Object: UserDefinedFunction [dbo].[fun_IsValidID] Script Date: 2017/9/13 18:25:08 ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO ALTER FUNCTION [dbo].[fun_IsValidID](@ID Varchar(18)) -- Add the parameters for the stored procedure here RETURNS BIT AS BEGIN DECLARE @ValidFactors VARCHAR(17), @ValidCodes VARCHAR(11), @I TINYINT, @iTemp INT --位数不满足则为非法ID IF Len(@ID) <> 15 AND Len(@ID) <> 18 RETURN(0); --如果是15位身份证 则只验证日期和是否数字格式 IF LEN(@ID)=15 IF ISDATE('19'+SUBSTRING(@ID,7,6))=0 OR ISNUMERIC(@ID)=0 RETURN(0); ELSE RETURN(1); /*18位身份证 验证日期 校验位 */ --验证日期和前17位是否数字格式 IF ISDATE(SUBSTRING(@ID,7,8))=0 OR ISNUMERIC(SUBSTRING(@ID,1,17))=0 RETURN(0); --验证校验位开始 SELECT @ValidFactors='79A584216379A5842', @ValidCodes='10X98765432', @I=1,@iTemp=0 WHILE @i<18 BEGIN SELECT @iTemp=@iTemp+CAST(SUBSTRING(@ID,@i,1) AS INT)*(CASE SUBSTRING(@validFactors,@i,1) WHEN 'A' THEN 10 ELSE SUBSTRING(@ValidFactors,@i,1) END) ,@i=@i+1 END IF SUBSTRING(@ValidCodes,@iTemp%11+1,1)=RIGHT(@ID,1) RETURN(1); ELSE RETURN(0); RETURN NULL; END --调用 select dbo.fun_IsValidID('410481199208156033') --正确身份证返回1, --错误的返回0
试试其它关键字
同语言下
.
SQL查询 多列合并成一行用逗号隔开
.
查看存储过程修改时间,最近执行时间
.
设置手动批量删除数据库相关进程
.
获取某个表中特定字段的所有字符串形式
.
SQL 如何去除重复的字符串
.
怎么去掉一个字段中的重复数据
.
String 去除空格 回车 换行 水平制表符
.
SQL查询和替换含有回车,空格,TAB
.
SQL SERVER 查询每日新增用户数量、次留数量
.
判断两个字符串是否存在相同的内容
可能有用的
.
SQL查询 多列合并成一行用逗号隔开
.
查看存储过程修改时间,最近执行时间
.
设置手动批量删除数据库相关进程
.
获取某个表中特定字段的所有字符串形式
.
SQL 如何去除重复的字符串
.
怎么去掉一个字段中的重复数据
.
String 去除空格 回车 换行 水平制表符
.
SQL查询和替换含有回车,空格,TAB
.
SQL SERVER 查询每日新增用户数量、次留数量
.
判断两个字符串是否存在相同的内容
鑫炫
贡献的其它代码
(
18
)
.
合并多个数组,传入参数为数组,传入个数为任意多个
.
将DataTable或Ilist<>转换成JSON格式
.
验证身份证号完美版(SQL)
.
不等待脚本结束输出消息
.
求N!中末尾有多少个0
.
文件操作,父目录,子目录,所有文件、文件夹,属性信
.
键盘相关
.
找到数组中两个元素的最小距离
.
从一个未排序的集合中找出某个元素的索引号
.
查询的时候临时生成自定义数据列
Copyright © 2004 - 2024 dezai.cn. All Rights Reserved
站长博客
粤ICP备13059550号-3