Я нашел похожие вопросы, но нет четкого ответа на этот вопрос. У меня есть эта таблица:Почему AES_DECRYPT возвращает null?
CREATE DATABASE testDB DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;
CREATE TABLE testTable
(
firstName binary(32) not null,
lastName binary(32) not null
/* Other non-binary fields omitted */
)
engine=INNODB DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;
Это утверждение выполняет просто отлично:
INSERT INTO testTable (firstName) VALUES (AES_ENCRYPT('Testname', 'test'));
Но это возвращает NULL:
SELECT AES_DECRYPT(firstName, 'test') FROM testTable;
Почему это возвращение NULL?
FWIW, это возвращает "TestValue", как и ожидалось:
SELECT AES_DECRYPT(AES_ENCRYPT('testValue','thekey'), 'thekey');
@owlstead Я сделал. Он находится в операциях INSERT и SELECT. Поле, которое я выбираю, является 'firstName' из таблицы' testTable'. – user1091949
О, это вы, моя ошибка, спасибо за сообщение об этом назад :) Вы можете принять свой собственный ответ после whilte –