欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

PostgreSQL 查找當(dāng)前數(shù)據(jù)庫(kù)的所有表操作

 更新時(shí)間:2020年12月25日 09:33:33   作者:潘廣宇 Leo  
這篇文章主要介紹了PostgreSQL 查找當(dāng)前數(shù)據(jù)庫(kù)的所有表操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧

實(shí)現(xiàn)的功能類似MySQL:

show tables;

在 PostgreSQL 中需要寫:

select * from pg_tables where schemaname = 'public';

返回結(jié)果類似如下:

schemaname | tablename | tableowner | tablespace | hasindexes | hasrules | hastriggers | rowsecurity 
------------+-----------+------------+------------+------------+----------+-------------+-------------
 public  | deploy | postgres |   | t   | f  | f   | f
 public  | deploy2 | postgres |   | f   | f  | f   | f
(2 rows)

補(bǔ)充:PostgreSql 獲取所有的表、視圖、字段、 主鍵

PostgreSQL獲取數(shù)據(jù)庫(kù)中所有view名 視圖:

SELECT viewname FROM pg_views 
WHERE  schemaname ='public' 

postgreSQL獲取數(shù)據(jù)庫(kù)中所有table名 表:

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

postgreSQL獲取某個(gè)表tablename 所有字段名稱 , 類型,備注,是否為空 等

SELECT col_description(a.attrelid,a.attnum) as comment,pg_type.typname as typename,a.attname as name, a.attnotnull as notnull
FROM pg_class as c,pg_attribute as a inner join pg_type on pg_type.oid = a.atttypid
where c.relname = 'tablename' and a.attrelid = c.oid and a.attnum>0

postgreSQL獲取某個(gè)表tablename 的主鍵信息

select pg_attribute.attname as colname,pg_type.typname as typename,pg_constraint.conname as pk_name from 
pg_constraint inner join pg_class 
on pg_constraint.conrelid = pg_class.oid 
inner join pg_attribute on pg_attribute.attrelid = pg_class.oid 
and pg_attribute.attnum = pg_constraint.conkey[1]
inner join pg_type on pg_type.oid = pg_attribute.atttypid
where pg_class.relname = 'tablename' 
and pg_constraint.contype='p'

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教。

相關(guān)文章

最新評(píng)論