Avatar billede schris Praktikant
02. juli 2009 - 09:25 Der er 4 kommentarer og
1 løsning

Opdateringsforespørgsel - tilføjelse af data flere steder i en post

Jeg ville høre, om der er nogen der kan hjælpe med at lave  en opdateringsforespørgsel, der kan tilføje data flere steder i en streng

Jeg har et felt bestående af 32 karakterer som nedenfor

3A6CB03F67B903D09CE0FB002E989C40

Feltet skal opdateres, således at der skal indsættes \x foran hver anden karakter så resultatet bliver som nedenfor

\x3A\x6C\xB0\x3F\x67\xB9\x03\xD0\x9C\xE0\xFB\x00\x2E\x98\x9C\x40

Kan det overhovedet lade sig gøre med en forespørgsel?
Avatar billede mugs Novice
02. juli 2009 - 10:03 #1
Det kan gøres med en opdatering i stil med dette:

"/x" & Left([felt1];2) & "/x" & Mid([felt1];3;2) & "/x" & Mid([felt1];6;2) & "/x" o.s.v.
Avatar billede jensen363 Forsker
02. juli 2009 - 10:04 #2
Der er muligvis andre smartere måder, men dette skulle kunn bruges :

SELECT "/x" & Mid([DinTabel]![DitFelt],1,2) & "/x" & Mid([DinTabel]![DitFelt],3,2) & "/x" & Mid([DinTabel]![DitFelt],5,2) ...... osv ... AS Omformet
FROM DinTabel;
Avatar billede terry Ekspert
02. juli 2009 - 10:48 #3
Try making a function somthing like this and then in you update query call the function with the original string in the update to field


Public Function ConvString(Si As String) As String

Dim i As Integer, o As Integer
Dim So As String

So = "\x\x\x\x\x\x\x\x\x\x\x\x\x\x\x\x\x\x\x\x\x\x\x\x\x\x\x\x\x\x\x\x"

o = 1

    For i = 1 To 32
       
        If i Mod 2 = 1 Then
           
            o = o + 2
        End If
       
        Mid(So, o, 2) = Mid(Si, i, 1)
       
        o = o + 1
   
   
    Next i

    ConvString = So

End Function



SQL something like this

UPDATE tbl1 SET tbl1.Txt = ConvString([txt]);
Avatar billede schris Praktikant
02. juli 2009 - 11:38 #4
Hej Jensen :-)

Fik dit svar til at virke først :-) - derfor tildeler jeg dig pointene - hvis du altså vil svare - og ikke blot kommentere :-)

mvh

Søren C
Avatar billede jensen363 Forsker
02. juli 2009 - 11:41 #5
Jeg svarer :-)
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
Dyk ned i databasernes verden på et af vores praksisnære Access-kurser

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