如何根据SSRS中的变量报告表格?

时间:2012-11-13 07:50:33

标签: sql-server reporting-services

如何根据用户选择列出任何表(或所有表)的详细信息?例如,我想要一个包含查询的数据集:

SELECT * FROM @TableName

然后@TableName将从sys.tables获取表的列表。我的数据库版本是SQL 2008 R2。

1 个答案:

答案 0 :(得分:1)

要填充您可以使用的@TableName参数:

SELECT name FROM sys.tables

然后你的数据集的Sql语句可以是一个表达式:

="SELECT * FROM " & Parameters!TableName.Value

但是,这不会特别有用。在执行Sql语句时,字段名称会是什么?我想,对于数据库中的每个表,这都是不同的。当Sql语句是表达式时,字段名称不会自动填充,您必须手动添加它们。然后你必须以某种方式将这些字段映射到表格列。

因此,虽然理论上你可以做你想做的事,但实际上你无法使用结果。

所以不,你不能为数据库中的每个表都有一个通用报告(除非由于某种原因表格具有完全相同的结构)。