我有两个具有相同模式但数据不同的SQL Server数据库。我还在本机模式下为其中一个数据库生成SSRS生成报告。所有报告都使用相同的共享数据源。
我想允许用户获取其他数据库的报告。我为第二个数据库创建了第二个共享数据源。修改报告以使用此第二个数据源会按预期生成报告。
因为RDL是相同的,除了数据源,并且因为我不想维护基本上是重复的报告,我正在寻找一种根据用户输入动态切换数据源的方法。
有没有简单的方法来实现这一目标?现有的解决方案是最好的。除此之外,RDL的数据源可以进行参数化吗?或者,RDS的连接字符串是否可以参数化?
答案 0 :(得分:1)
您可以在连接字符串中使用参数或其他表达式
见http://msdn.microsoft.com/en-us/library/ms156450%28SQL.90%29.aspx(2005)
或http://msdn.microsoft.com/en-us/library/ms156450.aspx(2008)
答案 1 :(得分:0)
我要回到最后的答案。是的,使用连接字符串中的参数,但填充数据以确保您的用户不会看到您可能不希望他们看到安全性的数据库名称等。您可以将值存储在表中,同时传递人类可读和SQL Server特定值。
这有意义吗?