Ошибка при попытке маскировать столбец в SSMS - PullRequest
0 голосов
/ 13 января 2019

Я пытаюсь замаскировать некоторую информацию в своей таблице, когда я использую это:

ALTER TABLE Person
ALTER COLUMN DoB add masked with (Function = 'default()')

Я получаю эти две ошибки:

Неверный синтаксис рядом со словом «замаскированный»

и

Неверный синтаксис рядом с ключевым словом «с». Если оператор является общим табличным выражением, предложением xmlnamespaces или предложением контекста отслеживания изменений, предыдущий оператор должен заканчиваться точкой с запятой.

Это буквально тот же код, что и в документации Microsoft, но по какой-то причине он не работает

Если бы кто-то мог объяснить мне, в чем проблема, это бы мне очень помогло

1 Ответ

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

Чтобы замаскировать столбец с помощью оператора ALTER, тип данных столбца должен быть включен в этот оператор. Ключевое слово ADD также не обязательно. Я не знаю, каков тип данных столбца DoB из вашего примера, но его нужно изменить, как показано ниже. Судя по названию, это столбец datetime, но если он не совпадает, соответствующий тип данных нужно будет заменить.

ALTER TABLE Person ALTER COLUMN DoB DATETIME MASKED WITH (FUNCTION = 'default()')

Обновление: Эта ошибка была результатом использования SQL Server 2012, когда эта функция была выпущена в SQL Server 2016 .

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