MySql判断汉字、日期、数字的具体函数

 更新时间:2016年05月09日 08:54:24   作者:jerrylsxu  
这篇文章主要大家详细介绍了MySql判断汉字、日期、数字的具体函数,感兴趣的小伙伴们可以参考一下

几个平常用的mysql函数,MySql判断汉字、日期、数字的具体函数分享给大家,具体内容如下

1.判断字符串是否为汉字 返回值:1-汉字 0-非汉字

DROP FUNCTION IF EXISTS fc_is_hanzi;

CREATE FUNCTION fc_is_hanzi(
p_str VARCHAR(1024)
)
  RETURNS int(11)
  NOT DETERMINISTIC
  SQL SECURITY DEFINER
  COMMENT '检查字符串是否为汉字'
BEGIN
/*检查字符串是否为汉字 返回值:1-汉字 0-非汉字*/

  DECLARE _ret, i, other_cnt, l_acode INT DEFAULT 0;
  SET _ret = 0;
  SET i = 1;
  SET other_cnt = 0;
  SET l_acode = 0;
  WHILE i <= CHAR_LENGTH(p_str) DO
    SET l_acode = ASCII(SUBSTRING(p_str, i, 1));
    IF l_acode<124 or l_acode>254 THEN
      SET other_cnt = other_cnt + 1;
    END IF;
    SET i = i + 1;
  END WHILE;
  IF other_cnt = 0 THEN
    SET _ret = 1;
  ELSE
    SET _ret = 0;
  END IF;
  RETURN _ret;
END;

2.判断日期格式是否正确(返回值:1-正确 0-错误)

DROP FUNCTION IF EXISTS fc_ck_date;

CREATE FUNCTION fc_ck_date(
p_cont CHAR(32) 
)
  RETURNS tinyint(4)
  NOT DETERMINISTIC
  SQL SECURITY DEFINER
  COMMENT '判定日期格式是否正确'
BEGIN
/*判定日期格式是否正确(返回值:1-正确 0-错误)*/
/*输入值格式为:yyyyMMdd 或 yyyy-MM-dd*/

IF(SELECT DATE_FORMAT(p_cont,'%Y%m%d')) IS NULL THEN
  RETURN 0;
ELSE
  RETURN 1;
END IF;

END;

3.判断字符串是否为纯数字(返回值:1-为纯数字 0-非纯数字)

DROP FUNCTION IF EXISTS fc_is_num;

CREATE FUNCTION fc_is_num(
p_string VARCHAR(32) 
)
  RETURNS int(4)
  NOT DETERMINISTIC
  SQL SECURITY DEFINER
  COMMENT '检查字符串是否为纯数字'
BEGIN
/*检查字符串是否为纯数字*/
/*返回值:1-为纯数字 0-非纯数字*/

   DECLARE iResult INT DEFAULT 0;
   SELECT p_string REGEXP '^[0-9]*$' INTO iResult;
   IF iResult = 1 THEN
    RETURN 1;
   ELSE
     RETURN 0;
   END IF;
END;

以上就是MySql判断汉字、日期、数字的三段函数,希望对大家的学习有所帮助。

相关文章

  • DataGrip连接Mysql并创建数据库的方法实现

    DataGrip连接Mysql并创建数据库的方法实现

    本文主要介绍了DataGrip连接Mysql并创建数据库的方法实现,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-02-02
  • MySQL数据库完全卸载的方法

    MySQL数据库完全卸载的方法

    MySQL数据库是一款非常好用的数据库管理系统,但是相对来说卸载起来麻烦一些,本文就详细的介绍有一下卸载方法,感兴趣的可以了解一下
    2022-03-03
  • MySQL数据库JDBC编程详解流程

    MySQL数据库JDBC编程详解流程

    JDBC是指Java数据库连接,是一种标准Java应用编程接口( JAVA API),用来连接 Java 编程语言和广泛的数据库。从根本上来说,JDBC 是一种规范,它提供了一套完整的接口,允许便携式访问到底层数据库,本篇文章我们来了解MySQL连接JDBC的流程方法
    2022-01-01
  • mysql 操作总结 INSERT和REPLACE

    mysql 操作总结 INSERT和REPLACE

    用于操作数据库的SQL一般分为两种,一种是查询语句,也就是我们所说的SELECT语句,另外一种就是更新语句,也叫做数据操作语句。
    2009-07-07
  • 关于MySQL中“Insert into select“ 的死锁情况分析

    关于MySQL中“Insert into select“ 的死锁情况分析

    这篇文章主要介绍了关于MySQL中“Insert into select“ 的死锁情况分析,死锁是指两个或者多个事务在同一资源上的相互占用,并请求锁定对方占用的资源,从而导致恶性循环的现象,需要的朋友可以参考下
    2023-05-05
  • MySQL 8.0用户和角色管理原理与用法详解

    MySQL 8.0用户和角色管理原理与用法详解

    这篇文章主要介绍了MySQL 8.0用户和角色管理,结合实例形式分析了MySQL 8.0用户和角色管理相关概念、功能、原理、用法及操作注意事项,需要的朋友可以参考下
    2020-04-04
  • 解析MYSQL显示表信息的方法

    解析MYSQL显示表信息的方法

    本篇文章是对MYSQL显示表信息的方法进行了详细的分析介绍,需要的朋友参考下
    2013-06-06
  • MySql存储过程学习知识小结

    MySql存储过程学习知识小结

    这篇文章主要介绍了MySql存储过程学习知识小结的相关资料,非常不错,具有参考借鉴价值,需要的朋友可以参考下
    2016-06-06
  • 一篇文章带你入门SQL编程

    一篇文章带你入门SQL编程

    这篇文章主要为大家详细介绍了SQL编程的入门方法,使用数据库,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,希望能够给你带来帮助
    2022-02-02
  • Mysql GTID Mha配置方法

    Mysql GTID Mha配置方法

    下面小编就为大家带来一篇Mysql GTID Mha配置方法。小编觉的挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-03-03

最新评论