Avatar billede mobildata Nybegynder
11. juni 2007 - 21:35 Der er 3 kommentarer

gemme tal med ENCODE/DECODE

Når jeg prøver at gemme f.eks strengen "0000025" i en BLOB kolonne ved hjælp af ENCODE('0000025','password') returner den kun "25" når jeg henter den med DECODE igen, det gælder alle tal der begynder et eller flere "nuller". Har også prøvet at lave kolonnen om til TEXT er resultatet det samme.

Har kun en 3.23 så har ikke andre muligheder for at kryptere.

Nogen bud på løsninger?
Avatar billede erikjacobsen Ekspert
11. juni 2007 - 21:41 #1
Umiddelbart giver

SELECT decode( encode( '000025', 'xxx' ) , 'xxx' )

jo faktisk '000025'. Men hvis du efterfølgende regner på tallet, inden du ser det, så vil 0-erne forsvinde.
Avatar billede mobildata Nybegynder
19. juni 2007 - 13:30 #2
tak for svar du havde også ret, fandt ud af at det var min PHP kode der gjorde det.
du kan lægge et svar for point. 

et lille tillægsspærgsmål, hvordan laver jeg en wildcard (LIKE 'xxx%') søgning på det krypterede felter?
Avatar billede erikjacobsen Ekspert
19. juni 2007 - 13:47 #3
måske, aldrig prøvet: SELECT  ... WHERE decode(felt) like '%25'
Jeg samler slet ikke på point, tak.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Computerworld tilbyder specialiserede kurser i database-management

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester