Ver Mensaje Individual
  #1  
Antiguo 14-06-2012
Avatar de Angel.Matilla
Angel.Matilla Angel.Matilla is offline
Miembro
 
Registrado: ene 2007
Posts: 1.350
Reputación: 19
Angel.Matilla Va por buen camino
Datos encriptados en MySQL

Estoy empezando a trabajar con este motor con Builder C++ 5. Tengo una tabla en la que los datos personales, por seguridad, están encriptados con AES_ENCRYPT y tengo este query:
Código:
SELECT num_socio, AES_DECRYPT(apellidos, @clavencrypt) ApeSoc,
AES_DECRYPT(nombre, @clavencrypt) NomSoc, login_socio FROM inscripciones
Se ejecuta sin problema y la consulta genera un resultado, pero todas las columnas encriptadas vienen vacías y todas tiene datos seguro.

Me explico mejor. Si yo ejecuto el query directamente en el shell de MySQL me devuelve, por ejemplo, esto:
Cita:
+----------------+--------+--------------+
| ApeSoc | NomSoc | login_socio |
+----------------+--------+--------------+
| MATILLA CAND┴S | ┴NGEL | angelmatilla |
+----------------+--------+--------------+
Como quiero cargar un TListView con los datos recuperados ejecuto eso:
Código:
for (; !Query->Eof; Query->Next())
{
     pItem = Lista->Items->Add();
     pItem->Caption = Query->FieldByName("login_socio")->AsString;
     pItem->SubItems->Add(Trim(Query->FieldByName("ApeSoc")->AsString) + ", " + 
          Query->FieldByName("NomSoc")->AsString);
     pItem->SubItems->Add(Query->FieldByName("num_socio")->AsInteger);
}
y el resultado que obtengo es, por ejemplo, este:

En la columna identidad debería aparecer MATILLA CANDÁS, ÁNGEL. La consulta la ejecuto con un TADOQuery y la base de datos esá conectada con un TADOConnection.
Responder Con Cita