desc कमांड की अलग-अलग टूल्स के लिए अलग-अलग व्याख्या की जाती है। यह क्या करता है कुछ मानक Oracle दृश्यों का चयन करता है।
यहां उन दृश्यों पर एक प्रश्न दिया गया है जो वांछित कॉलम डेटा प्रदान करेगा, लेकिन मैं आपको सभी उपलब्ध देखने के लिए * का चयन करने के लिए प्रोत्साहित करता हूं।
आपके पास 3 प्रकार के दृश्य हैं, dba_, all_ , और उपयोगकर्ता_* विचार। मैं user_* का उपयोग करता हूं क्योंकि यह प्रत्येक स्कीमा/उपयोगकर्ता के लिए उपलब्ध है, लेकिन यह केवल उस स्कीमा/उपयोगकर्ता के स्वामित्व वाली वस्तुओं को सूचीबद्ध करता है। dba_ विचार आम तौर पर केवल dba के लिए होते हैं, और आपके dba का आप पर कितना भरोसा है, इस पर निर्भर करते हुए all_ विचार आपके लिए उपलब्ध हो भी सकते हैं और नहीं भी। ^_^
select tc.column_name
, tc.nullable
, tc.data_type || case when tc.data_type = 'NUMBER' and tc.data_precision is not null then '(' || tc.data_precision || ',' || tc.data_scale || ')'
when tc.data_type like '%CHAR%' then '(' || tc.data_length || ')'
else null
end type
, cc.comments
from user_col_comments cc
join user_tab_columns tc on cc.column_name = tc.column_name
and cc.table_name = tc.table_name
where cc.table_name = upper(:tablename)