使用自定義函式在 MySQL 中驗證日期


讓我們建立一個自定義函式來驗證 MySQL 中的日期 -

mysql> set global log_bin_trust_function_creators=1;
Query OK, 0 rows affected (0.03 sec)
mysql> delimiter //
mysql> 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
   -> //
Query OK, 0 rows affected (0.11 sec)
mysql> delimiter ;

案例 1 -

當引數為 null 值時,即要檢查的日期不是實際日期。使用 SELECT 語句呼叫函式 -

mysql> select isValidDate(NULL);

這將生成以下輸出,即不是日期 -

+-------------------+
| isValidDate(NULL) |
+-------------------+
| 0                 |
+-------------------+
1 row in set (0.05 sec)

案例 2 -

當引數為實際日期值時。使用 SELECT 語句呼叫函式 -

mysql> select isValidDate('2019-10-21');

這將生成以下輸出,即 1,實際日期 -

+---------------------------+
| isValidDate('2019-10-21') |
+---------------------------+
| 1                         |
+---------------------------+
1 row in set (0.00 sec)

更新於: 2020-04-07

1K+ 瀏覽量

啟動你的 職業生涯

透過完成課程獲得認證

開始
廣告
© . All rights reserved.