Неправильное использование параметра flush_interval_seconds в инструкции ALTER DATABASE - PullRequest
0 голосов
/ 27 января 2019

Я создал проект базы данных в Visual Studio, но при публикации я получаю сообщение об ошибке:

Неправильное использование параметра flush_interval_seconds в инструкции ALTER DATABASE

И сгенерированный код:

Сообщение 153, уровень 15, состояние 5, строка 5
Неправильное использование параметра flush_interval_seconds в инструкции ALTER DATABASE.
(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
Недопустимое использование параметра interval_length_minutesв операторе ALTER DATABASE.

(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

Произошла ошибка во время выполнения пакета.

Я пытаюсь найти какую-либо ссылку на это, и чтовызывает это, и в конечном итоге, как это исправить, поэтому любые указания приветствуются.

Редактировать : вышеуказанный SQL генерируется автоматически при публикации БД из Visual Studio

Ответы [ 2 ]

0 голосов
/ 27 января 2019

Вы можете настроить его с помощью Visual Studio.

Обозреватель решений-> Проект базы данных -> Щелкните правой кнопкой мыши -> Свойства -> Параметры проекта -> Параметры базы данных -> Хранилище запросов

ИзменитьОт 0 до требуемого значения.


Связанный: SSDT: параметры проекта SQL и Параметры проекта базы данных

Если это не работает, онозначает, что в папке «Pre / Post Deployment» имеется пользовательский сценарий SQL.

0 голосов
/ 27 января 2019

Нулевое значение для DATA_FLUSH_INTERVAL_SECONDS не имеет смысла, так как это значение для асинхронного сброса.Я думаю, что 60 секунд это минимум.Кроме того, 1 минута является минимумом для INTERVAL_LENGTH_MINUTES, размера временного окна статистики фиксированной длины.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...