利用 Sql 中檢視表結構資訊

2021-04-15 21:52:56 字數 2153 閱讀 2626

(1)

select

表名=case when a.colorder=1 then d.name else '' end,

表說明=case when a.colorder=1 then isnull(f.value,'') else '' end,

字段序號=a.colorder,

欄位名=a.name,

標識=case when columnproperty( a.id,a.name,'isidentity')=1 then '√'else '' end,

主鍵=case when exists(select 1 from sysobjects where xtype='pk' and parent_obj=a.id and name in (

select name from sysindexes where indid in(

select indid from sysindexkeys where id = a.id and colid=a.colid

))) then '√' else '' end,

型別=b.name,

占用位元組數=a.length,

長度=columnproperty(a.id,a.name,'precision'),

小數字數=isnull(columnproperty(a.id,a.name,'scale'),0),

允許空=case when a.isnullable=1 then '√'else '' end,

預設值=isnull(e.text,''),

字段說明=isnull(g.[value],'')

from syscolumns a

left join systypes b on a.xusertype=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 sysproperties g on a.id=g.id and a.colid=g.**allid 

left join sysproperties f on d.id=f.id and f.**allid=0

--where d.name='要查詢的表'    --如果只查詢指定表,加上此條件

order by a.id,a.colorder

(2)sql2000系統表的應用

--1:獲取當前資料庫中的所有使用者表

select name from sysobjects where xtype='u' and status>=0

--2:獲取某乙個表的所有字段

select name from syscolumns where id=object_id('表名')

select a.* from sysobjects a, syscomments b where a.id = b.id and b.text like '%表名%'

--4:檢視當前資料庫中所有儲存過程

select name as 儲存過程名稱 from sysobjects where xtype='p'

--5:查詢使用者建立的所有資料庫

select * from master..sysdatabases d where sid not in(select sid from master..syslogins where name='sa')

或者select dbid, name as db_name from master..sysdatabases where sid <> 0x01

--6:查詢某乙個表的字段和資料型別

select column_name,data_type from information_schema.columns

where table_name = '表名'

--7:取得表字段的描述

select name,

(select value from sysproperties where id = syscolumns.id and **allid=syscolumns.colid) as 描述

from syscolumns where id=object_id('表名')

Mysql檢視表結構資訊

檢視所有的庫 select lower schema name schema name from information schema.schemata where schema name not in mysql information schema test search tbsearch sb...

用sql檢視表結構

1.oracle sql select column name,data type,data length,nullable sql from user tab columns sql where table name sql tablename sql select from user tab c...

Sql語句檢視表結構

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