查询当前库中包含某个字段并且包含自增的表

查询当前库中包含某个字段并且包含自增的表

-- use dbname
--当前库中包含某个字段的表
select top 1000 o.name as tablename,c.name as colname 
from dbo.syscolumns c join sysobjects o on c.id=o.id 
--and uid= USER_ID('dbo')
where 1=1
and c.name='col_name'
and o.type='U' 
order by o.name 


--当前库中包含某个字段and Identity 的表
select top 1000 o.name as tablename,c.name as colname 
from dbo.syscolumns c join sysobjects o on c.id=o.id 
--and uid= USER_ID('dbo')
where 1=1
and c.name='col_name'
and o.type='U' 
--order by o.name 
and o.name  in (
select tablename from (
select  o.name as tablename,c.name as colname ,c.id,c.name
,CASE WHEN COLUMNPROPERTY(c.id, c.name, 'IsIdentity') = 1 THEN ''
             ELSE ''
        END AS 标识 
from dbo.syscolumns c join sysobjects o on c.id=o.id 
--and uid= USER_ID('dbo')
where 1=1
--and c.name='userid'
and o.type='U' 
) t where t.标识=''
)
order by o.name 

 

posted @ 2017-03-15 11:08  davidhou  阅读(446)  评论(0编辑  收藏  举报