Avatar billede basementjack Nybegynder
14. august 2004 - 17:38 Der er 10 kommentarer og
1 løsning

Sætte ind midt i en tabel

Jeg har en access db med felterne:
Id (tal)(nøgle)
Text (notat)
Head (notat)
...
Nu siger vi så at jeg har jeg har udfyldt 3 af dem hhv. 1,2,3 og Hej,Hej2,Hej3 og Header, Header2, Header3 .....
Hvad gør jeg så hvis jeg nu vil Indsætte en ny værdi på pladsen hvor id er 1, men stadig beholde de 3 første værdier, bare hvor de 3 første værdier er rykket en tand..

Regner med at det er en sql-string der kan gøre det.
Avatar billede bfjmnemonic Nybegynder
14. august 2004 - 17:43 #1
I en database er det rimelig ligegyldigt hvor i tabellerne dataerne står.

Hvorfor ville du dog gøre det?
Avatar billede trekkies Juniormester
14. august 2004 - 17:43 #2
Du skal bruge en update steng:
Se denne side:
http://html.dk/tutorials/asp/lektion22.asp
Avatar billede basementjack Nybegynder
14. august 2004 - 17:45 #3
Det er det ikke ligegyldigt når der sorteres efter Id'et...

Update flytter da ikke de andre værdier, som skal gemmes.. Den overskriver den første værdi..
Avatar billede bfjmnemonic Nybegynder
14. august 2004 - 17:48 #4
Jeg tror ikke det kan lade sig gøre. Men mindre du gør det manuelt. Hvorfor sortere du også på ID. ( Ikke for at spørge dumt )
Avatar billede basementjack Nybegynder
14. august 2004 - 17:50 #5
Det er en samling af Link til min hovedemenu som jeg skal kunne bestemme rækkefølgen på.. Så jeg skal sortere på en eller anden måde og jeg ville gerne have kunne sætte et nyt link ind midt i uden at skulle halvdelen af min menu så få den på sin plads.. (Er Online CMS jeg forsøger mig med)
Avatar billede bfjmnemonic Nybegynder
14. august 2004 - 17:51 #6
Det kan godt lade sig gøre med SQL.

Du skal bare skrive en SQL forespørgsel der første spørger hvor mange poster du har i tabellen "ID".

Derefter skal den tage den sidste Post og oprette igen som nummeret på den sidste post + 1
Så kan du gøre det samme med alle de andre indtil du når til nummer 1.

Men jeg kan ikke se hvornår man nogensinde ville have brug for det?
Avatar billede bfjmnemonic Nybegynder
14. august 2004 - 17:53 #7
Ok .. Hvad så med bare at lave en update på alle poster hvor du bare ændre ID nummeret, det behøves jo ikke ændre på pladserne i tabellen for dette.
Avatar billede basementjack Nybegynder
14. august 2004 - 17:56 #8
www.jakobj.dk/CMSdemo/
Prøv at gå derind og opret et MenLink.. Det kommer altid i bunden så med mindre man gør noget i den stil...

Det ville da også være fint kun at gøre det på ID nummeret.. Håbede bare der var en simpel måde at gøre det på.. Noget med at flyt alt fra WHERE = 1 og INSERT nyt WHERE = 1.. Så jeg ikke skal lave løkker...
Avatar billede bfjmnemonic Nybegynder
14. august 2004 - 18:03 #9
Ikke mig bekendt. Men det er jo heller ikke normalt et problem. Det skyldes nok at man normalt sortere efter f.eks. alfabetet, eller noget andet. Det du i virkeligheden vil sortere efter er det du på et givent tidspunkt syntes er den rigtige orden, og det er jo dynamisk, hvor dataerne er statiske.

Det er måske i virkeligheden ikke den bedste slags data til en Database?
Avatar billede basementjack Nybegynder
14. august 2004 - 18:05 #10
Det ved jeg godt, men tilgæld skal det være i database for at jeg kan ændre det online... Hvilket var det jeg prøvede på..
Avatar billede bfjmnemonic Nybegynder
14. august 2004 - 18:05 #11
Ok :)
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