sql获取表的所有字段及属性


 1 select
 2      c.name as name,t.name as type
 3      ,convert(bit,c.IsNullable)  as isNULL
 4      ,convert(bit,case when exists(select 1 from sysobjects where xtype='PK' and parent_obj=c.id and name in (
 5          select name from sysindexes where indid in(
 6              select indid from sysindexkeys where id = c.id and colid=c.colid))) then 1 else 0 end) 
 7                  as isKey
 8      ,convert(bit,COLUMNPROPERTY(c.id,c.name,'IsIdentity')) as isIdentity
 9      
10      ,COLUMNPROPERTY(c.id,c.name,'PRECISION') as length
11      ,ISNULL(CM.text,'') as defualtVal
12      ,isnull(ETP.value,'') AS describe
13      --,ROW_NUMBER() OVER (ORDER BY C.name) AS [Row]
14 from syscolumns c
15 inner join systypes t on c.xusertype = t.xusertype 
16 left join sys.extended_properties ETP on ETP.major_id = c.id and ETP.minor_id = c.colid and ETP.name ='MS_Description' 
17 left join syscomments CM on c.cdefault=CM.id
18 where c.id = object_id('表名')

 附上获取数据库内所有用户新增的表的语句

select * from sys.all_objects where type='U'

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM