PostgreSQL 查找當前數據庫的所有表、字段

查看當前所有表

SELECT
	tablename 
FROM
	pg_tables 
WHERE
	tablename NOT LIKE'pg%' 
	AND tablename NOT LIKE'sql_%' 
ORDER BY
	tablename;

查看當前表的所有字段

SELECT 
	C.relname,
	A.attname AS NAME,
	A.attnotnull AS NOTNULL,
	format_type ( A.atttypid, A.atttypmod ) AS TYPE,
	col_description ( A.attrelid, A.attnum ) AS COMMENT 
FROM
	pg_class AS C,
	pg_attribute AS A 
WHERE
	C.relname = '表名' 
	AND A.attrelid = C.oid 
	AND A.attnum > 0

查看當前所有表的所有字段

SELECT C
	.relname,
	A.attname AS NAME,
	A.attnotnull AS NOTNULL,
	format_type ( A.atttypid, A.atttypmod ) AS TYPE,
	col_description ( A.attrelid, A.attnum ) AS COMMENT 
FROM
	pg_class AS C,
	pg_attribute AS A 
WHERE
	C.relname IN ( SELECT tablename FROM pg_tables WHERE tablename NOT LIKE'pg%' AND tablename NOT LIKE'sql_%' ORDER BY tablename ) 
AND A.attrelid = C.oid 
AND A.attnum > 0
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章