greenplum:數據源字段長度變化排查

今天收到一個郵件,說是XXX要擴容,其實就是字段加長。數據服務自然是要排查一番。想想greenplum應該會有元數據或數據字典。假設這個擴容字段有關鍵字key,那麼就可以用下面的SQL把所有包括key的字段名都取出來,排查就容易了。從這個事情可以看出字段命名規範對後期維護的重要性。

SELECT c.nspname
,b.relname
,a.attname
,a.data_type
FROM   (SELECT a.attrelid
,a.attname
,pg_catalog.format_type(a.atttypid, a.atttypmod) AS data_type
FROM   pg_catalog.pg_attribute a
WHERE  a.attnum > 0
AND NOT a.attisdropped) a
,pg_class b
,pg_namespace c
WHERE  lower(attname) LIKE '%key%'
AND a.attrelid = b.oid
AND b.relnamespace = c.oid
ORDER BY c.nspname,b.relname,a.attname;

因爲系統完全規範化很難,所以排查數據字典只是解決大部分問題,其餘還要靠經驗、記憶和實測。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章