Не уверен, что это возможно, но я бы хотел сделать это за один шаг, если смогу. Я хотел бы обновить поле 3, если мои переданные значения соответствуют двум другим полям, которые зашифрованы. Вот что у меня не работает ...
UPDATE tbl
SET field3=CONCAT(field3, 'some additional value')
WHERE field1 = ENCRYPTION_APPROACH('my_value_in_the_clear', ENCRYPTION_SETTINGS) AND
field2 = ENCRYPTION_APPROACH('my_other_value_in_the_clear', ENCRYPTION_SETTINGS);
Поля 1 и 2 НЕ являются ключами, но программно гарантированно являются уникальными. Кажется, шифрование работает, я могу использовать тот же подход, чтобы сначала вставить запись, а затем выбрать ее. Однако, когда я запускаю это с проверенными тестовыми данными, я получаю «затронутые 0 строк», и никаких сообщений об ошибках.
Я могу просто сделать составной вызов, где я сначала выбираю запись с помощью того же подхода, а затем обновляю ее по ключу (который работает для другого вызова). Но я бы очень хотел, чтобы это было на шаг, если смогу. Мысли