यहां सिस्टम कैटलॉग के विरुद्ध क्वेरी दी गई है, जो आपकी ज़रूरत की हर चीज़ प्राप्त करेगी (एक बोनस प्राथमिक-कुंजी फ़ील्ड के साथ जो मुफ़्त में दी गई है)।
SELECT DISTINCT
a.attnum as num,
a.attname as name,
format_type(a.atttypid, a.atttypmod) as typ,
a.attnotnull as notnull,
com.description as comment,
coalesce(i.indisprimary,false) as primary_key,
def.adsrc as default
FROM pg_attribute a
JOIN pg_class pgc ON pgc.oid = a.attrelid
LEFT JOIN pg_index i ON
(pgc.oid = i.indrelid AND i.indkey[0] = a.attnum)
LEFT JOIN pg_description com on
(pgc.oid = com.objoid AND a.attnum = com.objsubid)
LEFT JOIN pg_attrdef def ON
(a.attrelid = def.adrelid AND a.attnum = def.adnum)
WHERE a.attnum > 0 AND pgc.oid = a.attrelid
AND pg_table_is_visible(pgc.oid)
AND NOT a.attisdropped
AND pgc.relname = 'TABLE_NAME' -- Your table name here
ORDER BY a.attnum;
जो इस तरह के परिणाम लौटाएगा:
num | name | typ | notnull | comment | primary_key
-----+-------------+-----------------------------+---------+---------------------+-------------
1 | id | integer | t | a primary key thing | t
2 | ref | text | f | | f
3 | created | timestamp without time zone | t | | f
4 | modified | timestamp without time zone | t | | f
5 | name | text | t | | f
- संख्या:स्तंभ संख्या
- नाम:कॉलम का नाम
- टाइप:डेटा टाइप
- notnull:क्या कॉलम को
NOT NULL
के रूप में परिभाषित किया गया है? - टिप्पणी:कोई भी
COMMENT
कॉलम के लिए परिभाषित - प्राथमिक_की:क्या कॉलम को
PRIMARY KEY
के रूप में परिभाषित किया गया है? - डिफ़ॉल्ट:डिफ़ॉल्ट मान के लिए प्रयुक्त कमांड