有人可以帮我列出所有列及其数据库中所有用户表的表吗? 我不想列出系统表。
SELECT name FROM syscolumns
给我所有列名,但有没有办法从结果集中排除所有系统表?
答案 0 :(得分:1)
select b.name as tablename, a.name as columnname
from syscolumns a join sys.tables b on a.id = b.object_id
where b.type='U';
Type U
=用户定义的表格!
系统表格为Type = S
,因此您可以使用此查询来避免它们!
答案 1 :(得分:0)
SELECT
-- o.type,
-- o.type_desc,
o.name AS object_name,
c.name AS column_name
FROM sys.columns c
INNER JOIN sys.objects o
ON o.object_id = c.object_id
WHERE
o.type = 'U'
ORDER BY
o.name,
c.name