点击右上方红色按钮,关注“IT骆驼”,每天都了解一点企业信息化常识

作者:毕承峙

日期:2020年2月28日


>>引子

新冠疫情胜利在望,这场持续了一个多月的人民战争终于让我看看到了曙光,今天堂而皇之迈出小区查看了一下周围的情况,回家时途径小区大门口,经过安保人员的严格检查,其中一项为查看公众号中申报的信息及二维码(申报信息已于上周物业上门登记录入),根据身份证号码、手机号码查询,可怎么也查不到我的登记信息,后来只好报上具体的楼栋、楼层、单元号等详细信息,才精准查处我的登记信息,仔细核对之下,发现登记时工作人员将电话号码写错了一个数字!真是“差之毫厘谬以千里”啊!

看起来简单的一件小事,却反映了企业信息化信息系统数据录入的校验,对后续系统使用的重要性,如果根据登记信息,一旦需要紧急联系本人时,由于电话号码的错误,就可能失去联系的最佳时机,造成什么结果就不得而知了!

如何设置数据有效值验证(验证输入数据有效性)(1)

这是一个包含了错误手机号码的个人同行码,但依旧在使用着!

摘要

系统安全是任何信息化建设安全的重中之重,数据是系统安全要保护的核心对象,就像押钞车要保护钞票,拍卖行要保护拍卖品一样,如果钞票是假钞、拍卖品是赝品,那保护就是去了意义!如果系统输入的数据是脏数据,系统数据安全也就没有意义,无从谈起了。我将从数据类型的角度结合应用场景来给出验证数据输入有效性的几中方法。

如何设置数据有效值验证(验证输入数据有效性)(2)

输入数据验证分析是确保系统数据有效的重要手段

数据类型说明

既然企业信息化数据录入校验非常重要,首先要多系统数据录入的类型进行分类,根据不同的类型才能对症下药,做好像一个的校验。企业信息化中常见的输入数据主要包括以下类型:

  1. 数字型(对应关系数据库中的Number,Integer,Long,float,Double等格式)
  2. 字符型(对应关系数据库中的char,varchar,text)
  3. 日期型(对应关系数据库中的Datetime)
  4. 文件(通过操作系统提供的文件系统I/O操作)

对以上数据类型,在进行有效性验证是,无外乎从数据合法性、有效性、准确性几个方面来做验证:

步骤1、做好数据合法性验证

数据合法性主要是指数据对象本身的验证,主要包括以下几个方面:

如何设置数据有效值验证(验证输入数据有效性)(3)

传统的信息系统数据输入操作界面

  • 数据类型合法性验证。如:需要输入交易金额,需要填写参加会议人数等属于数字型;需要选择会议举办日期,则需要输入日期型等,根据系统设计时确定的数据类型,对输入数据做判断。此时可以引用一些公共的函数库,实现对数据类型的识别和判断,如果未做数据类型验证,到数据保存时就可能会出现Data Type错误,从而导致数据保存失败;
  • 是否为必填项验证。一般系统输入项比较多时,会明确部分内容必填,部分内容选填。对于必填的内容需要做好合法性验证,往往这部分内容对应了后台数据库中的NULL值,而程序发生空指针报错时,很多时候都来自必填项数据为空引起的;
步骤2、做好数据有效性验证

通过数据合法性验证后,需要进行数据有效性验证。数据有效性验证相对比较复杂,尤其是针对不同的业务系统,业务逻辑不同,需要进行的数据有效性验证也不相同,抛开个性化逻辑之外,通常企业信息系统数据有效性验证会有如下情况:

如何设置数据有效值验证(验证输入数据有效性)(4)

根据系统设计,对不同的数据类型,做好相应的数据验证

  • 电话号码验证。电话号码验证通常采用正则表达式的方式即可;
  • 货币数字验证。货币数字根据业务需求不同,格式不同(主要是保留小数点后几位);
  • 日期验证。目前已有免费代码封装了日期选择器,日期型数据通过日期选择器选择,减少输入错误机会,同时,系统如果需要选择日期段的,还需要验证起始日期和结束日期,起始日期不能大于结束如期;
  • 身份证号码验证。二代身份证号码为18位,网上已有免费统一的算法,验证任意身份证号码的有效性;
  • 密码有效性验证。包括密码强度验证(如:密码长度范围、必须包含的字符类型等)和密码有效性验证(要求两次输入的密码相同);
  • 字符最大长度验证。字符输入是信息系统输入项比较多的情况,不同的字符向要求输入的长度不同,有的有最低长度要求(如:地址),有的有最大长度要求,需要根据系统设计时提出的录入规范进行验证;
  • 文件格式验证。除创业的信息系统(如建筑设计软件)需要特殊的文件格式外,企业信息化常用的文件格式主要是:图片文件(如:*.jpg;*.png;*.gif;*.ico;*.jpeg等)、办公文档(*.doc;*.docx;*.ppt;*.pptx;*.xls;*.xlsx;*.pdf;*.txt等)、音视频文档(*.mp4;*.mp3;*.mov;*.avi等);
  • 文件大小验证。系统设计时,考虑到上传时间、存储空间、访问便捷性等,在文件上传中,往往会对文件大小进行相应的限制,在选择文件上传之前,系统会验证文件大小是否符合要求。
步骤3、做好数据准确性验证

数据准确性则是在有效性的基础上更进一步,通过有效性的数据,不代表就是准确的系统数据,如:手机号码。要验证系统输入的手机号码是否准确,目前最常用的就是手机验证码验证的方式,前端输完手机号码后,需要通过手机号码获取一个系统分配的验证码,然后再输入短信验证码,只有验证码匹配后,才证明输入的手机号码是准确的;比如财务系统中,利润=收入-成本,如果在系统中进行三项数据的汇报,则必须要满足以上公式,否则三项输入都需要调整。如何做好数据准确性验证呢?

如何设置数据有效值验证(验证输入数据有效性)(5)

手机上拨打电话号码,限制进行字符输入,确保了电话号码输入的便捷和准确

  • 手机号码验证码验证有效性
  • 海量数据可采用抽样法验证准确性;适用于地图数据编辑、气候环境变化、基因工程、大型电商等相关数据验证;(主:抽样法是专业的数据验证方法,其原理和过程此处略)。
  • 针对专业生产系统,尤其是精度较高的生产系统,需要对数据精度进行校验处理。

数据对于信息系统而言,就像血液对人体一样重要,数据的有效性就像血液的净化程度,只有保证每一项录入系统的数据都是有效的、准确的,系统运转起来才更加稳固,产生的结果才更加准确有效。做好以上几点,从数据合法性、有效性到准确性,严把输入关,是每个企业信息系统高质量建设的保障。

,