让我们创建一个自定义函数来验证MySQL中的日期-
set global log_bin_trust_function_creators=1; delimiter // create function isValidDate(actualDate varchar(255)) returns int -> begin -> declare flag int; -> if (select length(date(actualDate)) IS NOT NULL ) then -> set flag = 1; -> else -> set flag = 0; -> end if; -> return flag; -> end -> // delimiter ;
情况1-
当参数为空值时,即要检查的日期不是实际日期。使用SELECT语句调用函数-
select isValidDate(NULL);
这将产生以下输出,即不是日期-
+-------------------+ | isValidDate(NULL) | +-------------------+ | 0 | +-------------------+ 1 row in set (0.05 sec)
情况2-
当parameter为实际日期值时。使用SELECT语句调用函数-
select isValidDate('2019-10-21');
这将产生以下输出,即1,实际日期-
+---------------------------+ | isValidDate('2019-10-21') | +---------------------------+ | 1 | +---------------------------+ 1 row in set (0.00 sec)