Ho trovato domande simili, ma nessuna risposta chiara per questa domanda. Ho questa tabella:Perché AES_DECRYPT restituisce 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;
Questa affermazione viene eseguito bene:
INSERT INTO testTable (firstName) VALUES (AES_ENCRYPT('Testname', 'test'));
Ma, questo restituisce un valore nullo:
SELECT AES_DECRYPT(firstName, 'test') FROM testTable;
Perché questo ritorno NULL?
FWIW, questo restituisce "testvalue" come previsto:
SELECT AES_DECRYPT(AES_ENCRYPT('testValue','thekey'), 'thekey');
@owlstead l'ho fatto. È in entrambe le istruzioni INSERT e SELECT. Il campo che sto selezionando è 'firstName' dalla tabella' testTable'. – user1091949
Oh, questo sei stato tu, mio errore, grazie per averlo segnalato :) Puoi accettare la tua risposta dopo un whilte –