«Если рабочий хочет хорошо выполнять свою работу, он должен сначала заточить свои инструменты» — Конфуций, «Аналитики Конфуция. Лу Лингун»
титульная страница > программирование > Почему AES_DECRYPT() возвращает пустой результат в MySQL?

Почему AES_DECRYPT() возвращает пустой результат в MySQL?

Опубликовано 13 ноября 2024 г.
Просматривать:213

Why Does AES_DECRYPT() Return an Empty Result in MySQL?

Устранение неполадок с ошибкой AES_DECRYPT в MySQL

При попытке расшифровать данные, ранее зашифрованные с помощью AES_ENCRYPT(), вы можете столкнуться с проблемой, при которой AES_DECRYPT() возвращает пустой результат. Это может расстраивать, поскольку ваши зашифрованные данные остаются недоступными.

Согласно документации MySQL, ожидается, что AES_DECRYPT() вернет исходную строку после расшифровки зашифрованной строки. Однако в некоторых случаях вместо этого он может возвращать двоичную строку.

Чтобы решить эту проблему, попробуйте следующее:

SELECT *,
       CAST(AES_DECRYPT(first_name, 'usa2010') AS CHAR(50)) first_name_decrypt
FROM   user

Этот запрос использует функцию CAST() для преобразования расшифрованной двоичной строки в строку CHAR, которая может отображаться правильно. Вместо использования «first_name» в ваших последующих запросах или приложениях используйте «first_name_decrypt» для доступа к расшифрованным данным.

Последний учебник Более>

Изучайте китайский

Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.

Copyright© 2022 湘ICP备2022001581号-3