/ Forside / Teknologi / Udvikling / ASP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
ASP
#NavnPoint
smorch 9259
Harlekin 1866
molokyle 1040
Steffanst.. 758
gandalf 657
smilly 564
gibson 560
cumano 530
MouseKeep.. 480
10  Random 410
Flytte/kopier dele af en række...
Fra : Pelle


Dato : 23-04-01 23:40

Hejsa


Er det muligt at flytte dele af en række til en anden?

Problem:

Jeg har et kundekartotek med +10000 poster, alle indeholdene et
adressefelt -
da accessbasen blev lavet i sin tid, tog man ikke højde for at at adskille
vejnavn
og hus nummer så det hele står i samme 'kasse'

Er der mulighed for at lave et lille fixet script der flytter husnummeret
til en anden kasse
evt. også derefter/imens sletter det fra adressefeltet.


Mvh
Peter Jensen
http://www.eurocentret.dk/




 
 
Peter Lykkegaard (24-04-2001)
Kommentar
Fra : Peter Lykkegaard


Dato : 24-04-01 07:21


"Pelle" <mail@icedesign.dk> wrote in message
news:9c2b3p$h4e$1@news.inet.tele.dk...
>
> Jeg har et kundekartotek med +10000 poster, alle indeholdene et
> adressefelt -
> da accessbasen blev lavet i sin tid, tog man ikke højde for at at adskille
> vejnavn
> og hus nummer så det hele står i samme 'kasse'
>
Hvis du har direkte adgang til din Access database, så har access nogle
udmærkede indbyggede faciliteter til sligt
Ellers skal du i gang med lidt SQL gymnastik
dvs

Opret den nye tabel
Brug (begge linjer)
Insert Into MinNyeTabel (NytFeltA, NytFeltB)
Select FeltA, FeltB From MinGamleTabel

Husk at du skal bruge noget primary/foreign key for at sætte tabellerne
sammen bagefter

mvh/Peter Lykkegaard



Pelle (24-04-2001)
Kommentar
Fra : Pelle


Dato : 24-04-01 08:44

> Brug (begge linjer)
> Insert Into MinNyeTabel (NytFeltA, NytFeltB)
> Select FeltA, FeltB From MinGamleTabel


Jeg tror ikke jeg fik forklaret mig tydligt?

Så'en som jeg forstår dit svar, vil den flytte hele indholdet
til NytFeltA, NytFeltB i MinNyeTabel
fra FeltA, FeltB Fra MinGamleTabel

Mit problem er, at der i FeltA står "Bredgade 24",
det vil jeg delt i to nye felter (helst i samme tabel)
FeltC og FeltD med henholdsvis "Bredgade" i FeltC
og "24" i FeltD


Mvh
Peter Jensen






Janus Klok Lauritsen (24-04-2001)
Kommentar
Fra : Janus Klok Lauritsen


Dato : 24-04-01 10:56

Med regular expressions kan du lave et script der snupper f.eks. "alt indtil
et tal" og "fra tal til slut". Du kan sikkert uddybe søgningen, så den
bliver mere precis. Så skal du jo bare smide de 2 bidder i hvert sit felt i
DB.
Mvh
Janus
"Pelle" <mail@icedesign.dk> wrote in message
news:9c3avu$s5p$1@news.inet.tele.dk...
> > Brug (begge linjer)
> > Insert Into MinNyeTabel (NytFeltA, NytFeltB)
> > Select FeltA, FeltB From MinGamleTabel
>
>
> Jeg tror ikke jeg fik forklaret mig tydligt?
>
> Så'en som jeg forstår dit svar, vil den flytte hele indholdet
> til NytFeltA, NytFeltB i MinNyeTabel
> fra FeltA, FeltB Fra MinGamleTabel
>
> Mit problem er, at der i FeltA står "Bredgade 24",
> det vil jeg delt i to nye felter (helst i samme tabel)
> FeltC og FeltD med henholdsvis "Bredgade" i FeltC
> og "24" i FeltD
>
>
> Mvh
> Peter Jensen
>
>
>
>
>



Jakob Andersen (24-04-2001)
Kommentar
Fra : Jakob Andersen


Dato : 24-04-01 15:02

"Peter Lykkegaard" <polonline@hot.mail.com> wrote
> Insert Into MinNyeTabel (NytFeltA, NytFeltB)
> Select FeltA, FeltB From MinGamleTabel

Du kan også lave noget ala dette:

<%
Set objConn = Server.CreateObject("ADODB.Connection")
objConn.ConnectionString = ".........<Din connectionstring>........"

Set objRS = objConn.Execute("SELECT FeltA, FeltB FROM MinGamleTabel")

Do while Not objRS.EOF
arrGade_Nr = Split(objRS("FeltA")," ")
objConn.Execute("INSERT INTO MinNyeTabel(FeltA, FeltB, FeltC, FeltD)
VALUES('" & objRS("FeltA") & "', '" & objRS("FeltB") & "', '" arrGade_Nr(0)
"', " & arrGade_Nr(1))
Loop
%>

Det giver redundant data men det lyder til at det er det du vil.

--
Jakob Andersen
FAQ for webdesign gruppen på
<http://www.usenet.dk/oss/dk.edb.internet.webdesign>
"Det er rart at være vigtig, men det er vigtigere at være rar "



Pelle (24-04-2001)
Kommentar
Fra : Pelle


Dato : 24-04-01 16:06


> %>
>
> Det giver redundant data men det lyder til at det er det du vil.

Hejsa Jacob - lyder interessant, men vil den ikke dele ordet
så snart den ser et " " (mellemrum)? Hvad vi der så ikke ske med
"Lange Müllers Gade 2"?
Der skal jeg vel i realiteten ha 4 forskellige kasser at putte resultatet i,
faktisk så mange som der i teorien er vejnavn med mange mellemrum i

Øhh - redundant menes der så ikke dobbelt lagring af samme data ?

Meningen med 'projectet' er at lave et gaderegister ud fra
de mange kunder der er i basen. Brugeren skal så via nettet kunne se hvem
der bor i f. eks Danmarksgade ved at liste Gader der starter med D.

Trykkes der på D er det fint at Danmarksdage kun er repræsenteret
éen gang i (mellem)listen og ikke 130 gange fordi der tilfældigvis bor
130 emner i den gade i feks i nummer 11, 17, 32, 78 Etc

Som du måske har læst tidligere i konferencen har fået et godt råd
om hvordan man får et ASPscript til at løbe mit CD register igennem for
gentagelser, og derefter gemme navnet éen gang i en ny tabel - det var
meningen
jeg vil gøre det samme med kundedatabasen. Jeg vil dog ikke kunne
gøre det, før at husnumrene er frasorteret da den jo vil se alle adresser
som forskellige - Danmarksgade 12 og Danmarksgade 14, er samme gade
men computeen vil se dem som 2 forskellige - da de som førnævt står i
samme kasse, ærgeligt at den ikke er sted kendt


Ellers må jeg 'bare' igang med at cut'n'paste de næste 3 uger..... æv


Mvh
Peter Jensen






Jakob Andersen (24-04-2001)
Kommentar
Fra : Jakob Andersen


Dato : 24-04-01 23:02

"Pelle" <mail@icedesign.dk> wrote in message
news:9c44rb$rpu$1@news.inet.tele.dk...
> Hejsa Jacob - lyder interessant, men vil den ikke dele ordet
> så snart den ser et " " (mellemrum)? Hvad vi der så ikke ske med
> "Lange Müllers Gade 2"?

Dooh.... Min fejl havde lige hovedet under armen....

Du kan istedet gøre noget ala dette:

<%
Set objConn = Server.CreateObject("ADODB.Connection")
objConn.ConnectionString = ".........<Din connectionstring>........"

Set objRS = objConn.Execute("SELECT FeltA, FeltB FROM MinGamleTabel")

Do while Not objRS.EOF
strGade = Left(objRS("FeltA"), instrrev(objRS("FeltA"), " ") - 1)
IntNummer =Right(objRS("FeltA"), Len(objRS("FeltA")) -
instrrev(objRS("FeltA"), " "))
objConn.Execute("INSERT INTO MinNyeTabel(FeltA, FeltB, FeltC, FeltD)
VALUES('" & objRS("FeltA") & "', '" & objRS("FeltB") & "', '" & strGade &
"', " & intNummer)
Loop
%>

> Øhh - redundant menes der så ikke dobbelt lagring af samme data ?

Jo.... Det er jo det du får hvis du både har

Lange Müllers Vej 14
Samt
Lange Müllers Vej
og
14
--
Jakob Andersen
FAQ for webdesign gruppen på
<http://www.usenet.dk/oss/dk.edb.internet.webdesign>
"Det er rart at være vigtig, men det er vigtigere at være rar "



Pelle (24-04-2001)
Kommentar
Fra : Pelle


Dato : 24-04-01 23:40

>
> Set objRS = objConn.Execute("SELECT FeltA, FeltB FROM MinGamleTabel")
>

Først og fremmeste tak fordi du vil bruge så meget tid på mine spørgsmål.

Der er lige et par enkeltelte ting jeg må få helt på plads (stadig newbie)

vil SetObjRS ikke kikke i 2 felter fra MinGamleTabel, nemlig feltA og FeltB
- og hvis? hvorfor når gadenavnet som ønskes delt i to ny felter kun står i
FaltA

Og der vil ikke opstå problen i tilfældtet numerisk og alphanurisk adresse i
en
og samme f.sks kongensgade 3a?

Mvh
Peter




Jakob Andersen (24-04-2001)
Kommentar
Fra : Jakob Andersen


Dato : 24-04-01 23:49

"Pelle" <mail@icedesign.dk> wrote in message
news:9c4vf2$o5l$1@news.inet.tele.dk...
> Først og fremmeste tak fordi du vil bruge så meget tid på mine spørgsmål.

Det er jo det vi er her for.

> Der er lige et par enkeltelte ting jeg må få helt på plads (stadig newbie)
>
> vil SetObjRS ikke kikke i 2 felter fra MinGamleTabel, nemlig feltA og
FeltB
> - og hvis? hvorfor når gadenavnet som ønskes delt i to ny felter kun står
i
> FaltA

Jo, henter både FeltA og FeltB... Det troede jeg du ville...

Jeg går ud fra at FeltA indeholdet Gadenavn + nr

> Og der vil ikke opstå problen i tilfældtet numerisk og alphanurisk adresse
i
> en
> og samme f.sks kongensgade 3a?

Nej, det jeg gør er at jeg søger fra højre mod venstre efter det første
mellemrim (kan give problemer hvis du har f.eks: "vejnavn 1 th" da man så
kun vil få th. som nummer og resten som gadenavn) Derefter klipper jeg først
fra starten til det fundne mellemrum hvilket gerne skulle give mig
gadenavnet... Derefter "klipper" jeg fra slutningen til strengens længde
minus længden af det jeg klippede af før hvilket gerne skulle give mig
husnummeret.

--
Jakob Andersen
FAQ for webdesign gruppen på
<http://www.usenet.dk/oss/dk.edb.internet.webdesign>
"Det er rart at være vigtig, men det er vigtigere at være rar "



Pelle (25-04-2001)
Kommentar
Fra : Pelle


Dato : 25-04-01 00:07



> Jo, henter både FeltA og FeltB... Det troede jeg du ville...
> Jeg går ud fra at FeltA indeholdet Gadenavn + nr


Tusind tak for hjælpen - vil starks kaset mig over det i morgen efter
arbejde
Kan ikke lade være ... Hvad skulle der stå i FeltB, hvis FeltA har både
Gadenavn og husnummmer (som er tilfældet)...

> <http://www.usenet.dk/oss/dk.edb.internet.webdesign>

Ser interessant og lærerigt ud din side....

Mvh
Peter Jensen




Søg
Reklame
Statistik
Spørgsmål : 177557
Tips : 31968
Nyheder : 719565
Indlæg : 6408876
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste