![]() |
![]() |
![]() |
![]() |
![]() |
FTP | ![]() |
![]() |
CCD | ![]() |
![]() |
Buscar | ![]() |
![]() |
Trucos | ![]() |
![]() |
Trabajo | ![]() |
![]() |
Foros | ![]() |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
![]() |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
Constraint Unique con Columna encriptada
Hola Amigos,
Tengo una tabla con una columna que almacena los datos encriptados utilizando la funcion ENCRYPTBYPASSPHRASE de sql server 2014, el inconveniente que tengo es que a esa columna le aplique una restricción unique para que no se repita el dato, pero no funciona ya que si introduzco varios registros con una cadena 'Juan' ejemplo convert(varchar(800), ENCRYPTBYPASSPHRASE('1111', 'Juan')) varias veces lo permite, la columna esta declarada como varchar(800) . Saludos Cordiales, |
#2
|
||||
|
||||
Se supone que entonces guardas la cadena "Juan" de forma cifrada, y cada vez es distinta, por lo que ese campo no puede ser "único".
__________________
La otra guía de estilo | Búsquedas avanzadas | Etiquetas para código | Colabora mediante Paypal |
#3
|
|||
|
|||
Cita:
Tendré que buscar otra alternativa para validar que no se repitan. entendía que devolverían el mismo valor, debo hacer algo que sin mostrar la info impida duplicados. Gracias por la repuesta, |
#4
|
||||
|
||||
Es que entonces será fácil de descifrar. Por ejemplo, usando code64 o algún otro método reversible.
De todas formas, ignoro cómo trabaja ENCRYPTBYPASSPHRASE.
__________________
La otra guía de estilo | Búsquedas avanzadas | Etiquetas para código | Colabora mediante Paypal |
#5
|
|||
|
|||
Cita:
Lo que sucede es que si una tabla tiene cientos, miles o millones de registros es cuesta arriba descifrarlos todos para comparar si se repiten. Para descifrarlo se utiliza otra función de sql server DECRYPTBYPASSPHRASE pero habría que aplicarlo a todos los registros, podría ser en un trigger pero sospecho que podría ralentizar el proceso y también tendría otro inconveniente habría que seder la clave para descifrar al trigger, podría validarlo en el cliente pero no me gusta la idea por si se requiere hacer otros módulos, aunque es una opción ya que en esta tabla no tiene millones de registros. |
#6
|
|||
|
|||
Al parecer es un viejo tema de sql server Enforcing a unique constraint
|
#7
|
||||
|
||||
De todas formas, hay personas que se llaman igual, no puede ser un campo "único".
__________________
La otra guía de estilo | Búsquedas avanzadas | Etiquetas para código | Colabora mediante Paypal |
#8
|
|||
|
|||
Cita:
Última edición por juniorSoft fecha: 28-05-2019 a las 17:29:19. |
#9
|
||||
|
||||
No conocemos los requisitos que se exigen para ese dato. Si te sirve eso, pues adelante.
__________________
La otra guía de estilo | Búsquedas avanzadas | Etiquetas para código | Colabora mediante Paypal |
#10
|
|||
|
|||
![]() ![]() |
![]() |
|
|
![]() |
||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Base de Datos LOCAL / ENCRIPTADA | yapt | Conexión con bases de datos | 17 | 10-07-2010 12:59:11 |
conectar con base de datos sqlite encriptada | anubis | Conexión con bases de datos | 2 | 12-01-2010 21:41:47 |
OnReconcileError y Constraint | pablonill | Conexión con bases de datos | 1 | 09-03-2009 07:04:58 |
Index Unique o Unique Contraint???? | maxid | Firebird e Interbase | 3 | 24-04-2006 17:03:06 |
crear constraint | Johnny Q | SQL | 4 | 23-06-2005 22:55:50 |
![]() |
|