存储过程中数据集的表名

Posted

技术标签:

【中文标题】存储过程中数据集的表名【英文标题】:DataSet's Table name from a Stored Procedure 【发布时间】:2009-04-29 21:53:04 【问题描述】:

我正在使用存储过程来填充数据集。我需要做的是强制填充时创建的 DataTable 的名称。存储过程返回了多个表。最后一张表是我需要确保在返回时具有特定名称的表。它是通过返回一个变量的值而不是从任何表中提取来创建的。

选择@Phone 作为 My_800Number

我怎样才能使这个返回为名为“D1Header”的表?

【问题讨论】:

【参考方案1】:

没有 ADO.NET Native 方法可以做到这一点; ADO.Net根据this为生成的名称分配一个序号

您可以解决它...如果您说您需要具有特定名称的最后一个表,您可以这样做:

if (ds.Tables.Count > 0) 
  ds.Tables[ds.Tables.Count - 1].TableName = "name";

【讨论】:

【参考方案2】:

可以使用表名的枚举并在您的表引用中引用它而不是表本身。

ds.tables(myEnum.Contacts).rows ?

【讨论】:

以上是关于存储过程中数据集的表名的主要内容,如果未能解决你的问题,请参考以下文章

sql server存储过程如何动态生成表名

Oracle 分页存储过程

SQL SERVER里面如何在存储过程里面获取另一个存储过程所返回的表的数据?

SQL SERVER里面如何在存储过程里面获取另一个存储过程所返回的表的数据?

使用 MySql 8.0.17 上的存储过程在数据库上查找表名

mysql 在存储过程里的游标的表名能不能是变量啊?