用SQL語句獲得PostgreSQL表的主鍵

2021-07-09 02:34:52 字數 850 閱讀 1709

以下sql語句 用來顯示postgresql 表的表結構 包括

欄位名稱、字段型別、是否為主鍵 這些資訊

select pg_constraint.conname as pk_name from pg_constraint  inner join pg_class 

on pg_constraint.conrelid = pg_class.oid where pg_class.relname = 'yourtablename' and pg_constraint.contype='p'

這個可以顯示yourtablename表的主鍵

select pg_constraint.conname as pk_name,pg_attribute.attname as colname,pg_type.typname as typename 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 = 'yourtablename'

and pg_constraint.contype='p'

這個可以顯示出主鍵名,和主鍵關聯的欄位名,和欄位名型別

用SQL語句獲得伺服器系統日期

sky 2008 6 23 時間的計算 今天 select getdate 昨天 select getdate 1 本週第一天 select dateadd dd,datepart dw,getdate 1,getdate 本週最後一天 select dateadd dd,datepart dw,g...

用SQL語句獲得乙個儲存過程返回的表

定義乙個儲存過程如下 proc dbo test1 idint asselect1as id,abc asname union allselect idas id,zzz asname 返回兩行資料.現在想用sql語句來呼叫這個儲存過程,並把他返回的表放入變數中.可以如下做 declare tabl...

用SQL語句獲得乙個儲存過程返回的表

定義乙個儲存過程如下 create proc dbo test1 idint asselect1as id,abc asname union allselect idas id,zzz asname 返回兩行資料.現在想用sql語句來呼叫這個儲存過程,並把他返回的表放入變數中.可以如下做 decla...