视图内带有变量的动态 SQL (SQL Server)

2024-03-05

你好,我本质上是想在 SQL Server 2008 的新视图窗口中执行此操作:

声明@var =(从数据库中选择db); exec('从'+@var'+.dbo.Names中选择名称);

这个视图实际上在 SQL Server 中运行,但我无法保存它(它给了我一个错误),我可能只创建一个表返回函数,在其中执行所有相同的操作并返回表并创建一个基本上包含所有内容的视图从该表中可以看出,但我不确定这样做可能会导致性能下降。任何建议将不胜感激!谢谢。

解决方案: 我最终让它删除旧视图并在存储过程中重新创建一个新视图(使用动态 sql)。当该值更改时,我将调用 SP,它将更新视图以指向正确的数据库。感谢所有帮助人员,知道什么是不能做的阻止我尝试这些方法。


视图不能接受参数。表值函数就是解决方案。但您至少必须知道另一端将出现的表和结果集。如果您将要查询的表作为参数传递,您如何知道结果数据集的结构?

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

视图内带有变量的动态 SQL (SQL Server) 的相关文章