文章主要給大家介紹了關(guān)于SQL Server中Table字典數(shù)據(jù)的查詢SQL的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
前言
在數(shù)據(jù)庫系統(tǒng)原理與設(shè)計(jì)(第3版)教科書中這樣寫道:
數(shù)據(jù)庫包含4類數(shù)據(jù):
1.用戶數(shù)據(jù)
2.元數(shù)據(jù)
3.索引
4.應(yīng)用元數(shù)據(jù)
其中,元數(shù)據(jù)也叫數(shù)據(jù)字典,定義如下:
下面這篇文章就來給大家分享一個(gè)關(guān)于查詢SQL Server Table 結(jié)構(gòu)的SQL 語句。
T-SQL 如下:
SELECT
(
case
when
a.colorder=1
then
d.
name
else
''
end
) 表名,
a.colorder 字段序號(hào),a.
name
字段名,
(
case
when
a.colorder=1
then
isnull
(f.value,
''
)
else
''
end
) 表說明,
(
case
when
COLUMNPROPERTY( a.id,a.
name
,
'IsIdentity'
)=1
then
'1'
else
'0'
end
)標(biāo)識(shí),
(
case
when
(
SELECT
count
(*)
FROM
sysobjects
WHERE
(
name
in
(
SELECT
name
FROM
sysindexes
WHERE
(id = a.id)
AND
(indid
in
(
SELECT
indid
FROM
sysindexkeys
WHERE
(id = a.id)
AND
(colid
in
(
SELECT
colid
FROM
syscolumns
WHERE
(id = a.id)
AND
(
name
= a.
name
)))))))
AND
(xtype =
'PK'
))>0
then
'1'
else
'0'
end
) 主鍵,b.
name
類型,a.length 占用字節(jié)數(shù),
COLUMNPROPERTY(a.id,a.
name
,
'PRECISION'
)
as
長(zhǎng)度,
isnull
(COLUMNPROPERTY(a.id,a.
name
,
'Scale'
),0)
as
小數(shù)位數(shù),(
case
when
a.isnullable=1
then
'1'
else
'0'
end
) 允許空,
isnull
(e.text,
''
) 默認(rèn)值,
isnull
(g.[value],
' '
)
AS
[說明]
FROM
syscolumns a
left
join
systypes b
on
a.xtype=b.xusertype
inner
join
sysobjects d
on
a.id=d.id
and
d.xtype=
'U'
and
d.
name
<>
'dtproperties'
left
join
syscomments e
on
a.cdefault=e.id
left
join
sys.extended_properties g
on
a.id=g.major_id
AND
a.colid=g.minor_id
left
join
sys.extended_properties f
on
d.id=f.major_id
and
f.minor_id=0
--where b.name is not null
WHERE
d.
name
=
'DBA_Server'
--如果只查詢指定表,加上此條件,此案例為表DBA_Server
order
by
a.id,a.colorder
查詢出的結(jié)果如下:
總結(jié)
以上就是這SQL Server中Table字典數(shù)據(jù)的查詢SQL示例代碼文章的全部?jī)?nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,如果有疑問大家可以留言交流,謝謝大家的支持。
- SQL語句中不同的連接JOIN及SQL中join的各種用法
- SQL SERVER 2012數(shù)據(jù)庫自動(dòng)備份的方法
- 關(guān)于SQL server2008調(diào)試存儲(chǔ)過程的完整步驟
- SQL Server數(shù)據(jù)庫調(diào)整表中列的順序操作方法及遇到問題
- SQL Server中的SELECT會(huì)阻塞SELECT相關(guān)資料
- Docker中部署mysql服務(wù)的方法及遇到的問題
- 利用數(shù)據(jù)庫trigger對(duì)安全進(jìn)行監(jiān)控
- win7下手動(dòng)配置apache+php+mysql記
- 完成Excel動(dòng)態(tài)鏈接外部數(shù)據(jù)庫
- 網(wǎng)站被sql注入的修復(fù)方法
分享到:
投訴收藏