2

我在 Visual Studio 中创建了一个数据库项目,但是当我发布时出现错误:

ALTER DATABASE 语句中的选项 flush_interval_seconds 使用无效

生成的代码是:

消息 153,级别 15,状态 5,第 5 行
ALTER DATABASE 语句中选项 flush_interval_seconds 的使用无效。
(43,0):SQL72045:脚本执行错误。执行的脚本:

IF EXISTS (SELECT 1
           FROM   [master].[dbo].[sysdatabases]
           WHERE  [name] = N'$(DatabaseName)')
    BEGIN
        ALTER DATABASE [$(DatabaseName)]
            SET QUERY_STORE (DATA_FLUSH_INTERVAL_SECONDS = 0, INTERVAL_LENGTH_MINUTES = 0) 
            WITH ROLLBACK IMMEDIATE;
    END

SQL72014:.Net SqlClient 数据提供程序:
消息 153,级别 16,状态 6,第 5 行
ALTER DATABASE 语句中选项 interval_length_minutes 的使用无效。

(43,0):SQL72045:脚本执行错误。执行的脚本:

IF EXISTS (SELECT 1
           FROM   [master].[dbo].[sysdatabases]
           WHERE  [name] = N'$(DatabaseName)')
    BEGIN
        ALTER DATABASE [$(DatabaseName)]
            SET QUERY_STORE (DATA_FLUSH_INTERVAL_SECONDS = 0, INTERVAL_LENGTH_MINUTES = 0) 
            WITH ROLLBACK IMMEDIATE;
    END

执行批处理时发生错误。

我正在努力寻找有关此问题的任何参考,以及导致它的原因,以及最终如何解决它,因此感谢您提供任何指导。

编辑:当从 Visual Studio 发布 DB 时,会自动生成上述 SQL

4

2 回答 2

2

零值DATA_FLUSH_INTERVAL_SECONDS没有意义,因为该值用于异步刷新。我认为 60 秒是最短的时间。INTERVAL_LENGTH_MINUTES此外,1 分钟是固定长度统计时间窗口大小的最小值。

于 2019-01-27T18:02:15.620 回答
0

您可以使用 Visual Studio 进行设置。

解决方案资源管理器-> 数据库项目-> 右键单击​​-> 属性-> 项目设置-> 数据库设置-> 查询存储

将 0 更改为所需的值。


相关:SSDT:SQL 项目选项数据库项目设置

如果这不起作用,则意味着您在 Pre/Post Deployment 文件夹中有自定义 SQL 脚本。

于 2019-01-27T18:08:25.430 回答