如,select name, id, [uid] from sysobjects where type = 'u'
,这样可以查出所有的用户表,但是前面并没有schema的限定名,sql语句怎样查schema呢?要查那张表呢?
好吧,自己解决了。。。看系统表看的眼睛都瞎了。。。
select name = '[' + s.name + '].[' + t.name + ']' from sys.tables t , sys.schemas s where t.schema_id = s.schema_id
你可以从sys.object取,直接用SCHEMA_NAME(o.schema_id)取
select SCHEMA_NAME(o.schema_id) as SchemaName, o.name, o.object_id, o.* from sys.objects as o where type = 'u'