Ошибка AlwaysEncrypted Column при попытке вставить в таблицу
Давайте сначала начнем с ошибки:
Несоответствие схемы шифрования для столбцов / переменных. Схема шифрования для столбцов / переменных: (encryption_type = 'PLAINTEXT'), и выражение около строки '3' предполагает, что оно будет (encryption_type = 'DETERMINISTIC', encryption_algorithm_name = 'AEAD_AES_256_CBC_HMAC_SHA_256', column_encryption_key_key_key_key_c__name_name) Payments_Hub') (или слабее)
Я пытаюсь вставить в столбец с шифрованием AlwaysEncrypt при использовании хранимой процедуры:
Столбец PARAMETER_VALUE является зашифрованным столбцом.
CREATE PROCEDURE dbo.SP_UI_Parameter
(
@ID int OUTPUT,
@OPERATION_ID int,
@PARAMETER_NAME varchar(100),
@PARAMETER_METRIC varchar(100),
@PARAMETER_VALUE varchar(100)
)
AS
BEGIN
IF @ID IS NULL
BEGIN
INSERT INTO [dbo].[TOKEN_PARAMETER] (OPERATION_ID,
PARAMETER_NAME, PARAMETER_METRIC, PARAMETER_VALUE)
SELECT @OPERATION_ID, @PARAMETER_NAME, @PARAMETER_NAME, @PARAMETER_VALUE
SET @ID = SCOPE_IDENTITY()
END
ELSE
BEGIN
UPDATE [dbo].[TOKEN_PARAMETER] SET
OPERATION_ID = @OPERATION_ID,
PARAMETER_NAME = @PARAMETER_NAME,
PARAMETER_METRIC = @PARAMETER_METRIC,
PARAMETER_VALUE = @PARAMETER_VALUE
END
END
GO
Почему я получаю ошибку для запроса?
Что-то, что я должен включить в ХРАНЕННУЮ ПРОЦЕДУРУ?
- Я включил "Настройка шифрования столбца = Включено" в настройках подключения
- Я также включил Парамететеризацию для AlwaysEncrypted
- Ключ хранится на локальной машине
- Я создал ДЕТЕРМИНИСТИЧЕСКОЕ шифрование
- Механизм базы данных SQL Server 2016, использующий SSMS 17 - это может быть проблемой?
Заранее спасибо