日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術文章
文章詳情頁

詳解如何校驗MySQL及Oracle時間字段合規性

瀏覽:18日期:2023-08-02 20:12:38
目錄背景信息Oracle 時間數據校驗方法創建測試表并插?測試數據創建對該表的錯誤日志記錄創建并插入數據到臨時表,驗證時間數據有效性校驗錯誤記錄MySQL 數據庫的方法創建測試表模擬低版本不規范數據創建臨時表進行數據規范性驗證數據比對一個取巧的小方法關于 SQLESQLE 獲取背景信息

在數據遷移或者數據庫低版本升級到高版本過程中,經常會遇到一些由于低版本數據庫參數設置過于寬松,導致插入的時間數據不符合規范的情況而觸發報錯,每次報錯再發現處理起來較為麻煩,是否有提前發現這類不規范數據的方法,以下基于 Oracle 和 MySQL 各提供一種可行性方案作為參考。

Oracle 時間數據校驗方法創建測試表并插?測試數據CREATE TABLE T1(ID NUMBER,CREATE_DATE VARCHAR2(20));INSERT INTO T1 SELECT 1, '2007-01-01' FROM DUAL;INSERT INTO T1 SELECT 2, '2007-99-01' FROM DUAL; -- 異常數據INSERT INTO T1 SELECT 3, '2007-12-31' FROM DUAL;INSERT INTO T1 SELECT 4, '2007-12-99' FROM DUAL; -- 異常數據INSERT INTO T1 SELECT 5, '2005-12-29 03:-1:119' FROM DUAL; -- 異常數據INSERT INTO T1 SELECT 6, '2015-12-29 00:-1:49' FROM DUAL; -- 異常數據創建對該表的錯誤日志記錄Oracle 可以調用 DBMS_ERRLOG.CREATE_ERROR_LOG 包對 SQL 的錯誤進行記錄,用來記錄下異常數據的情況,十分好用。

參數含義如下

T1 為表名T1_ERROR 為對該表操作的錯誤記錄臨時表DEMO 為該表的所屬用戶EXEC DBMS_ERRLOG.CREATE_ERROR_LOG('T1','T1_ERROR','DEMO');創建并插入數據到臨時表,驗證時間數據有效性-- 創建臨時表做數據校驗CREATE TABLE T1_TMP(ID NUMBER,CREATE_DATE DATE);-- 插入數據到臨時表驗證時間數據有效性(增加LOG ERRORS將錯誤信息輸出到錯誤日志表)INSERT INTO T1_TMP SELECT ID, TO_DATE(CREATE_DATE, 'YYYY-MM-DD HH24:MI:SS')FROM T1 LOG ERRORS INTO T1_ERROR REJECT LIMIT UNLIMITED;校驗錯誤記錄SELECT * FROM DEMO.T1_ERROR;

其中 ID 列為該表的主鍵,可用來快速定位異常數據行。

MySQL 數據庫的方法創建測試表模擬低版本不規范數據-- 創建測試表SQL> CREATE TABLE T_ORDER( ID BIGINT AUTO_INCREMENT PRIMARY KEY, ORDER_NAME VARCHAR(64), ORDER_TIME DATETIME);-- 設置不嚴謹的SQL_MODE允許插入不規范的時間數據SQL> SET SQL_MODE='STRICT_TRANS_TABLES,ALLOW_INVALID_DATES';SQL> INSERT INTO T_ORDER(ORDER_NAME,ORDER_TIME) VALUES ('MySQL','2022-01-01'),('Oracle','2022-02-30'),('Redis','9999-00-04'),('MongoDB','0000-03-00');-- 數據示例SQL> SELECT * FROM T_ORDER;+----+------------+---------------------+| ID | ORDER_NAME | ORDER_TIME |+----+------------+---------------------+| 1 | MySQL | 2022-01-01 00:00:00 || 2 | Oracle | 2022-02-30 00:00:00 || 3 | Redis | 9999-00-04 00:00:00 || 4 | MongoDB | 0000-03-00 00:00:00 |+----+------------+---------------------+創建臨時表進行數據規范性驗證-- 創建臨時表,只包含主鍵ID和需要校驗的時間字段SQL> CREATE TABLE T_ORDER_CHECK( ID BIGINT AUTO_INCREMENT PRIMARY KEY, ORDER_TIME DATETIME);-- 設置SQL_MODE為5.7或8.0高版本默認值SQL> SET SQL_MODE='ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION';-- 使用INSERT IGNORE語法插入數據到臨時CHECK表,忽略插入過程中的錯誤SQL> INSERT IGNORE INTO T_ORDER_CHECK(ID,ORDER_TIME) SELECT ID,ORDER_TIME FROM T_ORDER;數據比對

將臨時表與正式表做關聯查詢,比對出不一致的數據即可。

SQL> SELECT T.ID, T.ORDER_TIME AS ORDER_TIME, TC.ORDER_TIME AS ORDER_TIME_TMPFROM T_ORDER T INNER JOIN T_ORDER_CHECK TC ON T.ID=TC.IDWHERE T.ORDER_TIME<>TC.ORDER_TIME;+----+---------------------+---------------------+| ID | ORDER_TIME | ORDER_TIME_TMP |+----+---------------------+---------------------+| 2 | 2022-02-30 00:00:00 | 0000-00-00 00:00:00 || 3 | 9999-00-04 00:00:00 | 0000-00-00 00:00:00 || 4 | 0000-03-00 00:00:00 | 0000-00-00 00:00:00 |+----+---------------------+---------------------+一個取巧的小方法

對時間字段用正則表達式匹配,對有嚴謹性要求的情況還是得用以上方式,正則匹配燒腦。

-- Oracle 數據庫SELECT * FROM T1 WHERE NOT REGEXP_LIKE(CREATE_DATE,'^((?:19|20)\d\d)-(0[1-9]|1[012])-(0[1-9]|[12][0-9]|3[01])$'); ID CREATE_DATE---------- -------------------- 2 2007-99-01 4 2007-12-99 5 2005-12-29 03:-1:119 6 2015-12-29 00:-1:49-- MySQL 數據庫-- 略,匹配規則還在調試中關于 SQLE

愛可生開源社區的 SQLE 是一款面向數據庫使用者和管理者,支持多場景審核,支持標準化上線流程,原生支持 MySQL 審核且數據庫類型可擴展的 SQL 審核工具。

SQLE 獲取類型地址版本庫https://github.com/actiontech/sqle文檔https://actiontech.github.io/sqle-docs/發布信息https://github.com/actiontech/sqle/releases數據審核插件開發文檔https://actiontech.github.io/sqle-docs-cn/3.modules/3.7_audit...

以上就是詳解如何校驗MySQL及Oracle時間字段合規性的詳細內容,更多關于MySQL Oracle時間字段合規性的資料請關注好吧啦網其它相關文章!

標簽: MySQL 數據庫
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
国产日韩欧美一区在线| 国产精品一站二站| 久久国产婷婷国产香蕉| 伊人影院久久| 99精品电影| 国产精成人品2018| 日韩一区二区三区高清在线观看| 黄色欧美日韩| 亚洲一级黄色| 国产91精品对白在线播放| 久久影院一区二区三区| 日本一区免费网站| 国产精品亚洲欧美一级在线| 精品深夜福利视频| 激情不卡一区二区三区视频在线| 国产精品xx| 今天的高清视频免费播放成人| 女同性一区二区三区人了人一| 视频一区二区三区中文字幕| 日本久久一区| 九九九精品视频| 久久精品影视| 噜噜噜躁狠狠躁狠狠精品视频| 综合在线一区| 国产乱人伦丫前精品视频 | se01亚洲视频 | 亚洲一区资源| 欧美日韩亚洲一区| 国产aa精品| 亚洲一区亚洲| 麻豆精品久久久| 久久精品二区三区| 一本综合精品| 欧美xxxx中国| 蜜臀a∨国产成人精品| 麻豆久久一区| 99精品综合| 亚洲日产国产精品| 美女尤物国产一区| 亚洲国内欧美| 91精品麻豆| 午夜精品久久久久久久久久蜜桃| 久久亚洲欧洲| 久久精品国产久精国产| 91高清一区| 国产精品99久久免费观看| 亚洲欧美一区在线| 久久亚洲成人| 蜜臀av国产精品久久久久| 99久久99久久精品国产片果冰| 国产精品天天看天天狠| 国产亚洲网站| 天堂网av成人| 高清在线一区| 国产精品一区二区精品| 亚洲开心激情| 午夜久久黄色| 久久久天天操| av中文字幕在线观看第一页| 久久99影视| 久久精品97| 日韩国产一二三区| 日韩精品一级中文字幕精品视频免费观看 | 天堂成人免费av电影一区 | 精品一区在线| 日韩黄色大片| 国产一区二区三区四区大秀| 欧美视频精品全部免费观看| 亚洲深夜影院| 蜜臀91精品国产高清在线观看| 国产不卡人人| 国产成人精品福利| 精品久久精品| 精品欠久久久中文字幕加勒比| 国产日韩欧美一区| 日韩高清三区| 日韩一区免费| 亚洲人成精品久久久| 免费高清在线一区| 亚洲综合三区| 久热re这里精品视频在线6| 欧美日韩国产欧| 狠狠爱成人网| 91精品91| 国产午夜精品一区二区三区欧美| 久久香蕉国产| 亚洲无线一线二线三线区别av| 久久精品亚洲人成影院 | 蜜臀av国产精品久久久久| 亚洲综合二区| 丝袜国产日韩另类美女| 亚洲欧洲一区| 性色av一区二区怡红| 欧美日韩国产一区二区三区不卡| 久久国产主播| 精品一区三区| 久久国产精品久久w女人spa| 亚洲欧美日韩国产一区| 视频一区在线播放| 亚洲精品国产日韩| 国产私拍福利精品视频二区| 国产欧美亚洲一区| 国内精品亚洲| 日本欧美不卡| 免费观看不卡av| 香蕉久久夜色精品国产| 亚洲人www| 国产三级精品三级在线观看国产| 日韩av午夜在线观看| 欧美黑人做爰爽爽爽| 亚洲天堂av影院| 99久精品视频在线观看视频| 午夜av一区| 最近国产精品视频| 国产香蕉精品| 福利片在线一区二区| 999精品一区| 中文视频一区| 国产精品久久亚洲不卡| 国产一区二区三区日韩精品| 日韩精品首页| 日韩影院精彩在线| 国产精品一区免费在线| 国产一区二区三区精品在线观看| 秋霞国产精品| 综合激情五月婷婷| 久久99视频| 91精品国产91久久久久久黑人| 国产农村妇女精品一二区| 欧美日韩亚洲国产精品| 91亚洲国产高清| 中文在线不卡| 久久激情av| av一区在线| 午夜久久av | 国产免费成人| 国产亚洲字幕| 91精品韩国| 一区二区三区网站| 国产一区日韩| 午夜在线精品| 久久久亚洲欧洲日产| 婷婷综合网站| 国产欧美久久一区二区三区| 日韩高清成人| 日韩高清国产一区在线| 蜜臀久久精品| 日韩高清中文字幕一区| 国内揄拍国内精品久久| 黄色日韩在线| 久久99久久人婷婷精品综合| 亚洲无线一线二线三线区别av| 日本一区二区中文字幕| 手机在线电影一区| 亚洲人成精品久久久| 激情黄产视频在线免费观看| 免费精品视频在线| 欧美激情另类| 天堂va欧美ⅴa亚洲va一国产| 精品一区视频| 在线一区免费观看| 久久精品网址| 亚洲精一区二区三区| yellow在线观看网址| 日本在线成人| 久久国产亚洲精品| 国产精品夜夜夜| 午夜在线一区二区| 国产一区二区三区亚洲| 亚洲制服一区| 久久国产日本精品| 国产美女亚洲精品7777| 激情91久久| 国产夫妻在线| 97精品资源在线观看| 伊人久久婷婷| 国产高清不卡| 日韩av网站在线观看| av中文资源在线资源免费观看| 狠狠爱成人网| 欧美xxxx性| 黑丝一区二区| 麻豆免费精品视频| 好看不卡的中文字幕| 麻豆成人91精品二区三区| 日韩av字幕| 岛国av在线播放| 国产欧美大片| 最新国产精品视频| 婷婷亚洲综合| 欧美香蕉视频| 激情综合五月| 国产福利资源一区| 亚洲伊人影院| 好看的av在线不卡观看| 日韩欧美三级| 成人午夜网址| 欧美激情精品| 国产精品主播| 日韩高清不卡一区|