gpt4 book ai didi

sql-server - 有没有办法强制报表生成器在它生成的查询中使用 "WITH (NOLOCK)"?

转载 作者:行者123 更新时间:2023-12-02 06:43:25 25 4
gpt4 key购买 nike

在工作中,用户非常乐意使用 Reporting Services 的报表生成器生成自己的报表。

但是,遗憾的是,它生成的查询效率非常低,而且它们不使用“WITH (NOLOCK)” - 对每个人来说都减慢了速度。

这些报告确实需要使用最新数据运行 - 无法卸载到报告服务器。而且由于它们查询非常具体、详细的数据,因此超立方体在这里没有用处。

所以问题是:

有没有办法配置报表生成器的数据模型,使其生成的查询在查询表时始终使用“WITH (NOLOCK)”?

最佳答案

NOLOCK 不是解决方案。脏读是inconsistent reads .您的总数将被取消,您的报告将不平衡,并且您通常会产生垃圾汇总数据。使用快照隔离来防止报告阻止更新并防止更新阻止报告:

ALTER DATABASE ... SET READ_COMITTED_SNAPSHOT ON;

Row Versioning-based Isolation Levels in the Database Engine了解更多详情。

关于sql-server - 有没有办法强制报表生成器在它生成的查询中使用 "WITH (NOLOCK)"?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4513127/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com