Fetstil Fetstil Kursiv Understrykning linje färgläggning tabellverk Punktlista Nummerlista Vänster Centrerat högerställt Utfyllt Länk Bild htmlmode
  • Forum & Blog
    • Forum - översikt
      • .Net
        • asp.net generellt
        • c#
        • vb.net
        • f#
        • silverlight
        • microsoft surface
        • visual studio .net
      • databaser
        • sql-server
        • databaser
        • access
        • mysql
      • mjukvara klient
        • datorer och komponenter
        • nätverk, lan/wan
        • operativsystem
        • programvaror
        • säkerhet, inställningar
        • windows server
        • allmänt
        • crystal reports
        • exchange/outlook
        • microsoft office
      • mjukvara server
        • active directory
        • biztalk
        • exchange
        • linux
        • sharepoint
        • webbservers
        • sql server
      • appar (win/mobil)
      • programspråk
        • c++
        • delphi
        • java
        • quick basic
        • visual basic
      • scripting
        • asp 3.0
        • flash actionscript
        • html css
        • javascript
        • php
        • regular expresssion
        • xml
      • spel och grafik
        • DirectX
        • Spel och grafik
      • ledning
        • Arkitektur
        • Systemutveckling
        • krav och test
        • projektledning
        • ledningsfrågor
      • vb-sektioner
        • activeX
        • windows api
        • elektronik
        • internet
        • komponenter
        • nätverk
        • operativsystem
      • övriga forum
        • arbete karriär
        • erbjuda uppdrag och tjänster
        • juridiska frågor
        • köp och sälj
        • matematik och fysik
        • intern information
        • skrivklåda
        • webb-operatörer
    • Posta inlägg i forumet
    • Chatta med andra
  • Konto
    • Medlemssida
    • Byta lösenord
    • Bli bonsumedlem
    • iMail
  • Material
    • Tips & tricks
    • Artiklar
    • Programarkiv
  • JOBB
  • Student
    • Studentlicenser
  • KONTAKT
    • Om pellesoft
    • Grundare
    • Kontakta oss
    • Annonsering
    • Partners
    • Felanmälan
  • Logga in

Hem / Forum översikt / inlägg

Posta nytt inlägg


Dela upp en sträng

Postades av 2006-05-16 14:40:34 - Daniel Åsberg, i forum asp - allmänt, Tråden har 6 Kommentarer och lästs av 512 personer

jag har en sträng som ser ut så här:
"6463,13546,311,3184" osv

Den kan ibland innehålla mer än 1000 tal och det skapar problem för databasen.

Kan man dela upp den per 800? Få in alla i en array eller liknande och loopa igenom med flera databasanrop (t.ex. 2 st databasanrop om det är 1500 tal i den första strängen)?

edit:
Det är alltså som så att min sql liknar den här: SELECT * FROM tabell WHERE id IN (6463,13546,311,3184)


Svara

Sv: Dela upp en sträng

Postades av 2006-05-17 19:52:18 - Andreas Hillqvist

Vad vill du göra?
Finns id värdena redan i databasen?
Vad är det som avgör vilka id värden som skall ingå i urvalet?


Svara

Sv:Dela upp en sträng

Postades av 2006-05-18 09:06:00 - Daniel Åsberg

Det fungerar som så att man har gjort några val tidigare på webbsidan och på så vis fått ett gäng idnr i en session("").

Sen på en sida så vill jag lista alla dessa poster som stämmer överens med idnummren man valt.


Lösningen jag har nu är att jag kör en SPLIT(sträng, ",") och får då allt i en array som loopas igenom och kör en databasfråga för varje (WHERE idnr = 12). Men det tar lite för lång tid om man har 2000 idnr.
Skulle därför vilja ha så att den kör fler per gång (WHERE idnr IN (12,13,14 osv)).


Svara

Sv: Dela upp en sträng

Postades av 2006-05-18 16:43:21 - Per Hultqvist

Om det inte är så noga med exakt hur många id:n som kommer med varje gång så kan du ju söka efter fösta kommatecknet efter t ex 1000 tecken (ca 250 tresiffriga id:n, ca 200 fyrsiffriga etc). Detta har jag för mig går att göra med String.IndexOf() (.net) och InStr() (pre-.net) genom att ange startpositionen 1000 och söka på kommatecken. Sedan är det ju en enkel sak att knåpa ihop SQL-satsen enligt din beskrivning.

Alternativet är ju att utgå ifrån den kod du har och i stället för att anropa databasen varje varv i loopen så anropar du den bara när loopvariabeln modulus 100 = 0 för att ta 100 poster i taget. Sedan får du lägga till lite kod för att slå ihop strängen varje varv. Solklart? :-)


Svara

Sv:Dela upp en sträng

Postades av 2006-05-22 08:32:13 - Daniel Åsberg

Absolut solklart Per! Ska prova det senare idag... tackar.


Svara

Sv: Dela upp en sträng

Postades av 2006-05-22 19:26:36 - Andreas Hillqvist

Om det rör sig om så många id nummer så skulle jag inte lagra id nummren i en sessions variabel.
Skapa en tabell.
Lägg till id i tabellen med och länka mot sessionsid och/eller användarid.

På så sätt kan du skapa en effektiv fråga med en join.



Svara

Sv:Dela upp en sträng

Postades av 2006-05-23 08:50:48 - Daniel Åsberg

Per: Det fungerade fint, tackar!

Andreas: Jo jag har tänkt i dom banorna med faktist. Har redan en sån lösning för sökresultatet. Men har tänkt att det kanske skulle belasta databasen onödigt mycket då kunderna bockar i och bockar ur dessa idnummer en och en i ett halvhögt tempo möjligtvis.


Svara

Nyligen

  • 09:09 Vill du köpa medicinska tester?
  • 12:47 Vem beviljar assistansen – kommune
  • 14:17 Någon med erfarenhet av hemstädnin
  • 14:14 Bör man använda sig av en båtförme
  • 14:12 Finns det någon intressant hundblo
  • 14:25 Tips på verktyg för att skapa QR-k
  • 14:23 Tips på verktyg för att skapa QR-k
  • 20:52 Fungerer innskuddsbonuser egentlig

Sidor

  • Hem
  • Bli bonusmedlem
  • Läs artiklar
  • Chatta med andra
  • Sök och erbjud jobb
  • Kontakta oss
  • Studentlicenser
  • Skriv en artikel

Statistik

Antal besökare:
Antal medlemmar:
Antal inlägg:
Online:
På chatten:
4 569 170
27 953
271 705
896
0

Kontakta oss

Frågor runt konsultation, rådgivning, uppdrag, rekrytering, annonsering och övriga ärenden. Ring: 0730-88 22 24 | pelle@pellesoft.se

© 1986-2013 PelleSoft AB. Last Build 4.1.7169.18070 (2019-08-18 10:02:21) 4.0.30319.42000
  • Om
  • Kontakta
  • Regler
  • Cookies