Avatar billede a_c Nybegynder
11. januar 2002 - 09:58 Der er 3 kommentarer og
1 løsning

Opdatering af felter

Jeg har en tabel der hedder difmedarb.
Den tabel indeholder et mednr felt der er unikt samt et name felt. Name feltet indeholder hele medarbejderens navn.
Tabellen er nu udvidet til at have et fornavn og et efternavn felt.
Det jeg skal er altså at tage det der står i Name feltet og tage det sidste ord og smide i efternavn feltet og resten i fornavn feltet.
Er der nogen der kan hjælpe mig med en SQL sætning.
A_C
Avatar billede a_c Nybegynder
11. januar 2002 - 11:27 #1
OK jeg er ude i det her.
update difmedarb
    set fornavn=SUBSTRING(name,1,CHARINDEX(\' \',name)),
    efternavn=SUBSTRING(name,CHARINDEX(\' \',name),len(name))

Det virker i og for sig godt nok, men den gør det omvendte af hvad jeg vil. Jeg vil gerne lægge det sidste ord i efternavn og resten, altså alt det første, i fornavn.
Hvordan kan jeg gør det?

a_c
Avatar billede pierrehusted Nybegynder
11. januar 2002 - 11:41 #2
Jeg kan ikke lave en SQL sætning, men et lille VBS/ASP program. Noget i den har stil.
Det forudsætter at du har en forbindelse til databasen, som hedder CONN.

---------------------
SQLStr = \"Select id, name from difmedarb\"
Set liste = Conn.Exeucte(SQLStr)
Dim navn, efternavn, fornavn

Do while not liste.EOF
  navn = liste(\"name\")
  efternavn = Trim(right(navn, InStrRev(navn, \" \")))
  fornavn = Trim(left(navn, len(efternavn)))

  SQLStr = \"Update difmedarb set fornavn = \'\" & fornavn & \"\', efternavn = \'\" & efternavn & \"\' where id = \" & liste(\"id\")
  Conn.Execute(SQLStr)
  liste.movenext
Loop
Avatar billede a_c Nybegynder
11. januar 2002 - 11:47 #3
Ok tak pierrehusted, men det jeg faktisk bare har brug for at vide for at min sql sætning gør hvad den skal, er at finde ud af hvordan jeg i SQL får fat i sidste ord i en streng.
Er der nogen der kan fortælle mig det?
Avatar billede a_c Nybegynder
11. januar 2002 - 12:04 #4
hmm OK øv.
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