ORACLE 检查数据库表中是否存在不规范字 段的语句参考.sql

时间:2020-12-08 20:05:27

--查看是否有除number,char,date,varchar2,clob/blob之外的类型,比如:NVARCHAR2,TIMESTAMP(6),FLOAT
SELECT DISTINCT a.DATA_TYPE FROM user_tab_cols a;

--对于number类型的,还需查询是否有确定的精度,若无,根据实际情况确定精度。
SELECT *
  FROM user_tab_cols a
 WHERE a.data_type = 'NUMBER'
   AND a.data_precision IS NULL;
 
--对于varchar2类型的,是否有最大长度>1000,根据实际情况确定是否必须。
SELECT *
  FROM user_tab_cols a
 WHERE a.data_type = 'VARCHAR2'
 AND a.char_length > 1000;