【问题标题】:How to find fields in a unknown table in a database?如何在数据库中的未知表中查找字段?
【发布时间】:2011-05-05 14:21:05
【问题描述】:
早上好!
我需要查看我的数据库,一开始不知道名称的表的一列,发生的情况如下:
在我为每个项目创建的应用程序中,创建了一个表,该表采用该项目的名称,采用给定名称并与创建日期和时间连接。因此,该表的名称存储在另一个名为 projects 的表中,该表有一个字段告诉客户属于该项目。当我做 SELECT 想看到与客户 ID 相关的应用项目的名称时,浏览那些客户背后的数据库表并将这些表带给我,以便我们最终可以看到所需的字段。
不知道我能不能说清楚,如果他们需要更多的细节就说吧!
谢谢!
【问题讨论】:
标签:
database
sql-server-2005
select
field
【解决方案1】:
如果我对您的理解正确,您需要找到与您的项目名称类似的表的确切名称,并且它们的名称中还有一些额外的字符(看起来像日期和时间)。
好吧,您可以使用如下查询列出所有以项目名称开头的表:
SELECT *
FROM sys.tables
WHERE name LIKE 'yourprojectname%'
sys.tables 是一个系统视图,其中列出了所有表。
'<i>yourprojectname</i>%' 是用于过滤表列表的掩码。 % 字符是必需的。它的意思是'任何一个或多个字符,任意数量(或一个都没有)'。 (如果没有%,输出将只显示一个表,其名称与您的项目的名称完全相同。如果存在这样的表。)