【发布时间】:2015-01-05 11:14:30
【问题描述】:
我使用的是 SQL Server 2008,并且我有一个如下所示的 SP:
SELECT id = t.nTableId
,t.nTableId AS id2
,t.nTableId
FROM dbo.table AS t
我正在使用需要列名的 .NET 应用程序: id、id2 和 nTableId。
现在我正在使用 sp_helptext 将 SP 作为字符串列表获取
var columns = new List<string>();
using (var reader = cmd.ExecuteReader())
{
while (reader.Read())
{
columns.Add(reader.GetString(0));
}
}
在这个字符串列表中,我试图找到 SELECT 和 FROM,然后获取这两者之间的行。我会格式化这些行,以便之后看起来正确。
那么问题是我觉得这个解决方案不够好。你们有什么技巧可以让 SQL Server 2008 在这种情况下检索列名 id、id2 和 nTableId。
【问题讨论】:
-
sp_describe_first_result_set可能是您正在寻找的,并且不涉及一大堆字符串操作。 -
为什么需要列名?听起来像是 XY 问题。
-
@RichardHansell 我付出了这么多的努力,结果就是这样。我去看看!
-
@SriramSakthivel 因为我在应用程序中使用它来创建基于列名的 XML 文件
标签: c# sql sql-server-2008