列出Database所有Key列或者獲取表主鍵名稱

2022-02-14 02:10:06 字數 1393 閱讀 5682

從sql server的檢視information_schema

中用information_schema.constraint_column_usage 和information_schema.table_constraints兩個檢視inner join在一起,可以列出需要的資料,下面insus.net把它寫成乙個自定義函式:

udf_keycolumns

create

function

[dbo

].[udf_keycolumns

](  

)returns

table

asreturn

(select kcu.[

table_name

],kcu.[

column_name

], kcu.[

ordinal_position

],tc.[

constraint_type

]from information_schema.key_column_usage as kcu

inner

join information_schema.table_constraints as tc on

(kcu.table_name = tc.table_name and kcu.[

constraint_name

]= kcu.[

constraint_name]))

如果我們想獲取某乙個表的主鍵名稱,可以寫乙個儲存過程:

usp_primarykey

create

procedure

[dbo

].[usp_primarykey

] (  

@tablename sysname)as

declare

@returnvalue

nvarchar(max)

select

@returnvalue=[

column_name

]from

[dbo

].[udf_keycolumns

]() 

where

[constraint_type]=

'primary key

'and

[table_name]=

@tablename

select

@returnvalue

引用儲存過程:

execute

[dbo

].[usp_primarykey

]'member

'參考相關:

sql server自定義函式(scalar-valued functions)

sql server自定義函式(table-valued functions)

Memcache 檢視列出所有key方法

今天在做乙個memcache的session測試,但是在測試的過程中,發現memcache沒有乙個比較簡單的方法可以直接象redis那樣keys 列出所有的session key,並根據key get對應的session內容,於是,我開始查詢資料,翻出來的大部分是一些memcache常用命令等,但是...

Memcache 檢視列出所有key方法

今天在做乙個memcache的session測試,但是在測試的過程中,發現memcache沒有乙個比較簡單的方法可以直接象redis那樣keys 列出所有的session key,並根據key get對應的session內容,於是,我開始查詢資料,翻出來的大部分是一些memcache常用命令等,但是...

Memcache 檢視列出所有key方法

1.cmd上登入memcache telnet 127.0.0.1 11211 2.列出所有keys stats items 這是條命令,列舉出所有keys 通過stats items 的返回資訊中的items id 獲取key 例如 itemid 為 7 第二個引數為列出的長度 0 為列出當前id...