SQL 校验身份证号格式
调用示例:
SELECT dbo.[fn_IDCardChk]('123')
/*
---------------------------
校验身份证号是否有效 成功返回1 失败返回0Jackerson
---------------------------
*/
CREATE FUNCTION [dbo].[fn_IDCardChk] ( @IDCard VARCHAR(18) )
RETURNS BIT
ASBEGINIF LEN(@IDCard) <> 15AND LEN(@IDCard) <> 18--身份证号只有15或18位RETURN(0);--如果是15位身份证 则只验证日期和是否数字格式IF LEN(@IDCard) = 15IF ISDATE('19' + SUBSTRING(@IDCard, 7, 6)) = 0OR ISNUMERIC(@IDCard) = 0RETURN(0);ELSERETURN(1);--18位身份证 验证日期 校验位IF ISDATE(SUBSTRING(@IDCard, 7, 8)) = 0OR ISNUMERIC(SUBSTRING(@IDCard, 1, 17)) = 0--验证日期和前17位是否数字格式RETURN(0);--验证校验位开始DECLARE @validFactors VARCHAR(17) ,@validCodes VARCHAR(11) ,@i TINYINT ,@iTemp INT;SELECT @validFactors = '79A584216379A5842',@validCodes = '10X98765432', @i = 1, @iTemp = 0;WHILE @i < 18BEGINSELECT @iTemp = @iTemp+ CAST(SUBSTRING(@IDCard, @i, 1) AS INT)* ( CASE SUBSTRING(@validFactors, @i, 1)WHEN 'A' THEN 10ELSE SUBSTRING(@validFactors, @i, 1)END ), @i = @i + 1;END;IF SUBSTRING(@validCodes, @iTemp % 11 + 1, 1) = RIGHT(@IDCard, 1)RETURN 1;ELSERETURN 0;RETURN NULL;END;GO
SQL 校验身份证号格式相关推荐
- SpringBoot自定义注解实现身份证号格式校验
背景 身份证的组成部分较为复杂, 如果仅使用正则表达式的话, 有些情况也无法校验出来, 例如正确的证件号为513334200310119074, 如果把最后一位变成9, 则是一个错误的证件号, 但 ...
- JS校验手机号和身份证号格式
1:校验手机号 //JS正则表达式校验手机号function isPoneAvailable(poneInput) {var myreg=/^[1][3,4,5,7,8][0-9]{9}$/;if ( ...
- js身份证号格式校验
/***校验身份证号 @param {String} personnumber 身份证号码 @example: checkIdcard(pass); //return true | false; */ ...
- vue组件中校验身份证号,手机号和邮箱
vue组件中校验身份证号,手机号和邮箱 直接上代码 一.在js文件中添加校验方式和方法 1. 身份证号码校验(说明,这个身份证校验的方式很精确,算法仔细推荐使用) export function id ...
- 验证身份证号 格式问题
导入的时候 验证身份证号的格式问题 if(!sfzh.equals("")&&isIDNumber(sfzh) == false){returnMap.put(&q ...
- Java校验身份证号工具类
直接上代码,该util可以校验身份证号,可以获取年龄.性别.出生日期. public class PersonIdCardUtil {/*** 省.直辖市代码表:* 11 : 北京 12 : 天津 1 ...
- mysql 校验 身份证_通过SQL校验身份证号码是否正确
下面是编程之家 jb51.cc 通过网络收集整理的代码片段. 编程之家小编现在分享给大家,也给大家做个参考. select /*pspt_id为用户身份证号码*/ a.pspt_id /*判断用户身份 ...
- 【Flutter】Dart 校验身份证号合法性,根据身份证号获取年龄性别
js版或OC.Java版的都容易找到,Dart版的比较少,mark一下吧. // 校验身份证合法性 bool verifyCardId(String cardId) {const Map city = ...
- 校验身份证号、手机号、银行卡号(TypeScript)
工具开源仓库https://gitee.com/lililic/information_simulation_open 工具在线地址http://www.onetribe.top/si 1.银行卡号校 ...
最新文章
- 数据科学的完整学习路径—Python版
- Android-Ant自动编译打包android项目 -- 2 ----签名与渠道包
- MVC Razor模板引擎 @RenderBody、@RenderPage、@RenderSection及Html.RenderPartial、Html.RenderAction...
- 前端学习(2005)vue之电商管理系统电商系统之获取动态参数列表
- raspberry pi_用Raspberry Pi制作婴儿监视器
- C++/CX:类的继承
- mysql查询结果输出到文件
- 机器人(RPA路程自动化)RPA流程自动化和AI的区别。
- Mars3D开发基础学习:3DTiles三维模型
- win10右键卡顿原因_Win10桌面点右键一直卡顿转圈怎么解决
- 2021新年腊八祝福语短信
- IBM、Google、Oracle三巨头的公有云之殇(上)
- 如何用工具自动修复数字IC后端设计实现绕线后的Physical DRC_
- 【Python】用字母生成图像
- 西数宣布将绿盘并入蓝盘
- 如何解决Paypal多账号登录账户关联?
- 微信获取信息用户登录报错redirect_uri域名与后台配置不一致,错误码10003
- 使用vue报错Cannot use ‘in‘ operator to search for
- 面向对象程序设计c++版董正言张聪课本课后习题答案第六章
- 到底什么是链接,它起到了什么作用?
热门文章
- JavaEE——SSM框架整合实现学生信息注册案例
- iphonex适配游戏_iPhoneX王者荣耀适配问题 iPhoneX游戏问题详解
- 2星|稻盛和夫《经营十二条》:内容太水,看目录就可以了
- 通过贝壳物联,让小度或天猫精灵语音控制你的8266
- 关于网络上的刷钻方法
- 计算机保持在线的几种方法,还在为智能盒子上电影软件收费烦恼?教你几个盒子上看大片的方法...
- nodejs+vue+elementui鲜花销售商城管理系统410
- mac终端Login Incorrect问题
- 银行主要业务--负债业务
- 电子学会2023年3月青少年软件编程python等级考试试卷(三级)真题,含答案解析