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

postgresql 實現(xiàn)獲取所有表名,字段名,字段類型,注釋

 更新時間:2021年01月06日 10:00:24   作者:風(fēng)雨同舟100  
這篇文章主要介紹了postgresql 實現(xiàn)獲取所有表名,字段名,字段類型,注釋操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧

獲取表名及注釋:

select relname as tabname,cast(obj_description(relfilenode,'pg_class') as varchar) as comment from pg_class c 
where relkind = 'r' and relname not like 'pg_%' and relname not like 'sql_%' order by relname

過濾掉分表:

加條件 and relchecks=0 即可

獲取字段名、類型、注釋、是否為空:

SELECT col_description(a.attrelid,a.attnum) as comment,format_type(a.atttypid,a.atttypmod) as type,a.attname as name, a.attnotnull as notnull 
FROM pg_class as c,pg_attribute as a where c.relname = '表名' and a.attrelid = c.oid and a.attnum>0

補充:PostgreSQL查詢表主鍵及注釋內(nèi)容

網(wǎng)上關(guān)于pgSql獲取表主鍵的內(nèi)容都是千篇一律,并且對于存在多主鍵的場景不支持。

附上測試后可獲取多個主鍵字段值的SQL

SELECT
 string_agg(DISTINCT t3.attname,',') AS primaryKeyColumn
 ,t4.tablename AS tableName
 , string_agg(cast(obj_description(relfilenode,'pg_class') as varchar),'') as comment
FROM
 pg_constraint t1
 INNER JOIN pg_class t2 ON t1.conrelid = t2.oid
 INNER JOIN pg_attribute t3 ON t3.attrelid = t2.oid AND array_position(t1.conkey,t3.attnum) is not null
 INNER JOIN pg_tables t4 on t4.tablename = t2.relname
 INNER JOIN pg_index t5 ON t5.indrelid = t2.oid AND t3.attnum = ANY (t5.indkey)
 LEFT JOIN pg_description t6 on t6.objoid=t3.attrelid and t6.objsubid=t3.attnum
WHERE t1.contype = 'p'
  AND length(t3.attname) > 0
  AND t2.oid = '表名' :: regclass
 group by t4.tablename

目前只找到了獲取指定表的主鍵信息,對于批量獲取沒有找到。

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

相關(guān)文章

  • 詳解如何在PostgreSQL中使用JSON數(shù)據(jù)類型

    詳解如何在PostgreSQL中使用JSON數(shù)據(jù)類型

    JSON(JavaScript Object Notation)是一種輕量級的數(shù)據(jù)交換格式,它采用鍵值對的形式來表示數(shù)據(jù),支持多種數(shù)據(jù)類型,本文給大家介紹了如何在PostgreSQL中使用JSON數(shù)據(jù)類型,需要的朋友可以參考下
    2024-03-03
  • PostGIS的安裝與入門使用指南

    PostGIS的安裝與入門使用指南

    在安裝PostGIS前首先必須安裝PostgreSQL,然后再安裝好的Stack?Builder中選擇安裝PostGIS組件。本文重點給大家介紹PostGIS的安裝與入門使用指南,感興趣的朋友一起看看吧
    2022-01-01
  • PostgreSQL12同步流復(fù)制搭建及主備切換方式

    PostgreSQL12同步流復(fù)制搭建及主備切換方式

    這篇文章主要介紹了PostgreSQL12同步流復(fù)制搭建及主備切換方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-03-03
  • PostgreSQL數(shù)據(jù)庫實現(xiàn)公網(wǎng)遠(yuǎn)程連接的操作步驟

    PostgreSQL數(shù)據(jù)庫實現(xiàn)公網(wǎng)遠(yuǎn)程連接的操作步驟

    PostgreSQL是一個功能非常強大的關(guān)系型數(shù)據(jù)庫管理系統(tǒng)(RDBMS),本文呢將簡單幾步通過cpolar 內(nèi)網(wǎng)穿透工具即可現(xiàn)實本地postgreSQL 遠(yuǎn)程訪問,需要的朋友可以參考下
    2023-09-09
  • PostgreSQL中的N''和::bpchar使用

    PostgreSQL中的N''和::bpchar使用

    文章主要介紹了在SQL中不同字符串類型的使用和區(qū)別,包括N'、::bpchar、VARCHAR(n)、CHAR(n)和TEXT等,并通過示例展示了它們在查詢結(jié)果中的表現(xiàn)
    2025-01-01
  • phpPgAdmin 配置文件參數(shù)說明中文版

    phpPgAdmin 配置文件參數(shù)說明中文版

    這篇文章主要介紹了phpPgAdmin配置文件config.inc.php-dist中注釋的詳細(xì)說明,并翻譯成中文,需要的朋友可以參考下
    2014-03-03
  • 基于PostgreSql 別名區(qū)分大小寫的問題

    基于PostgreSql 別名區(qū)分大小寫的問題

    這篇文章主要介紹了基于PostgreSql 別名區(qū)分大小寫的問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2021-01-01
  • PostgreSQL因大量并發(fā)插入導(dǎo)致的主鍵沖突的解決方案

    PostgreSQL因大量并發(fā)插入導(dǎo)致的主鍵沖突的解決方案

    在數(shù)據(jù)庫操作中,并發(fā)插入是一個常見的場景,然而,當(dāng)大量并發(fā)插入操作同時進(jìn)行時,可能會遇到主鍵沖突的問題,本文將深入探討 PostgreSQL 中解決因大量并發(fā)插入導(dǎo)致的主鍵沖突的方法,并通過具體的示例進(jìn)行詳細(xì)說明,需要的朋友可以參考下
    2024-07-07
  • 使用postgresql 模擬批量數(shù)據(jù)插入的案例

    使用postgresql 模擬批量數(shù)據(jù)插入的案例

    這篇文章主要介紹了使用postgresql 模擬批量數(shù)據(jù)插入的案例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2021-01-01
  • PostgreSQL連接數(shù)過多報錯:too many clients already的解決辦法

    PostgreSQL連接數(shù)過多報錯:too many clients already的解決

    在使用 Navicat 連接 PostgreSQL 數(shù)據(jù)庫時,突然遭遇到了一個報錯:“FATAL: sorry, too many clients already”,這一錯誤提示表明數(shù)據(jù)庫連接數(shù)已經(jīng)達(dá)到上限,無法再創(chuàng)建新連接,所以本文給大家介紹了相關(guān)的解決辦法,需要的朋友可以參考下
    2024-03-03

最新評論