SQL SERVER 查詢表結構的SQL語句

2021-06-25 20:55:22 字數 2229 閱讀 6943

select (

case

whena.

colorder

=1thend.

name

else

''end)as

表名,--如果表名相同就返回空

syscolumns(

表字段資訊表

) a  sysobjects d a

.colorder

as欄位序號,

a.name

as欄位名,

(case

when

columnproperty(a

.id,a

.name

,'isidentity'

)=1 then

'√'else

''end)as

標識,--返回

isidentity

的值,isidentity

只有兩個值:、 (

case

when

(select

count

(*)from

sysobjects

--查詢主鍵

where

(namein

(select

name

from

sysindexes

where (id

=a.id

)and

(indidin

(select

indid

from

sysindexkeys

where(id

=a.id

)and

(colidin

(select

colid

from

syscolumns

where (id

=a.id

)and

(name=a

.name))

)))))

and(xtype

='pk'

))>0 then

'√'else

''end)as

主鍵,--查詢主鍵

end   b

.name

as型別

,--systypes b a

.length

as占用位元組數,

columnproperty(a

.id,a

.name

,'precision')as

長度,isnull

(columnproperty(a

.id,a

.name

,'scale'

),0)

as小數字數,

(case

whena.

isnullable

=1then

'√'else

''end)as

允許空,

isnull(e

.text,''

)as預設值,

--syscomments e

isnull(g

.[value],''

)as欄位說明

--sys.extended_properties g (

字段資訊表)

from

syscolumns

aleft

join

systypesb

ona.xtype=b

.xusertype

inner

join

sysobjectsd

ona.id

=d.id

andd

.xtype

='u'

andd

.name

<>

'dtproperties'

left

join

syscommentse

ona.cdefault=e

.idleft

join

sys.

extended_propertiesg

ona.id

=g.major_id

anda

.colid=g

.minor_id

whered.

name

='systempara'

--所要查詢的表

orderbya

.id,a

.colorder

SQL Server裡查詢表結構命令

環境 sql server 2008 r2 問題 查詢表結構命令 對mysql和oracle資料庫熟悉的朋友知道用desc就可以查詢一張表的結構,但是在sql server裡執行desc命令會報錯。desc student 關鍵字 desc 附近有語法錯誤。現提供兩條命令查詢表結構 1.sp hel...

SQL Server裡查詢表結構命令

環境 sql server 2008 r2 問題 查詢表結構命令 對mysql和oracle資料庫熟悉的朋友知道用desc就可以查詢一張表的結構,但是在sql server裡執行desc命令會報錯。desc student 關鍵字 desc 附近有語法錯誤。現提供兩條命令查詢表結構 1.sp hel...

查詢Sqlserver 表結構資訊 SQL

select 表名 case when a.colorder 1then d.name else end 表說明 case when a.colorder 1then isnull f.value,else end 字段序號 a.colorder,欄位名 a.name,標識 case when co...