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


Läsa från fil, sätta in i databas

Postades av 2002-01-17 13:08:07 - Patrik Nilsson, i forum asp - allmänt, Tråden har 6 Kommentarer och lästs av 447 personer

Hej, nu behöver jag lite hjälp.
Håller på med ett litet projekt att läsa in en vanlig simpel .txt-fil som jag f.n. bara skriver ut på skärmen för att se så jag läser in rätt, och det gör jag.
Nu vill jag sätta in detta i en databas.
Jag har finurlat en del men inte kommit fram till något riktigt vettigt ännu.
F.n. har jag en ide som ser ut så här ungefär:

* Öppna filen
* Läs in en rad
* Anslut till databasen
* Skriv till databasen (INSERT INTO..)
* Koppla från databasen
* Läs in nästa rad
* Anslut till databasen
* Skriv till databasen (INSERT INTO..)
* Koppla från databasen
osv.
Det blir ju en jäkla massa anslutningar till databasen på detta viset, vilket bör ta lite tid.
Tiden är iofs inget stort problem för den här grejen kommer att köra...säg 3 gånger på en vecka så några sekunder extra är inget problem.
Är detta den enklaste lösningen eller finns det bättre som jag inte kommit på?

/Patrik


Svara

Sv: Läsa från fil, sätta in i databas

Postades av 2002-01-17 13:23:28 - Jan Eriksson

Varför stänga db hela tiden. Detta ska väl gå utmärkt:

* Öppna filen
* Anslut till databasen
* Loopa Texten innehållet
* Läsa en rad i textfilen
* Skriv till databasen (INSERT INTO..)
* Loopen vänder
* Koppla från databasen
* Koppla från textfilen

Hur många poster handlar det om varje gång?

/Janne




Svara

Sv: Läsa från fil, sätta in i databas

Postades av 2002-01-17 13:27:36 - Patrik Nilsson

Nej, självklart behöver man inte stänga databaskopplingen varje gång. Vet inte var jag fick det ifrån..
Det rör sig om 50-100 rader från text-filen varje gång det körs så det är en rätt liten grej det här egentligen.

Det hela är start- resp. resultatlistor för golftävlingar som genereras från ett centralt program (GK96) som jag inte styr över alls.

/Patrik


Svara

Sv: Läsa från fil, sätta in i databas

Postades av 2002-01-17 13:57:12 - Andreas Hillqvist

Du skulle nog oxå kunna skick alla insertsatser i en execute om det är SQL-server. Vet inte om det är bättre att skicka alla 100insertsattser i en execute. Eller om det är bättre att skicka dem en och en.

Har för mig att varje execut omges av en transaktion. Så på så sätt kan det vara en fördel/nackdel. Beroende på vilket beteende man vill ha.

Ibland vill man ju att den ska avbryta ångra om en rad är fel. I andra fall vill man ju att den bara skippar den och fortsätter på nästa.


Svara

Sv: Läsa från fil, sätta in i databas

Postades av 2002-01-17 20:29:26 - Patrik Nilsson

Hej!
Tack för alla tipsen.
Det är en ingen SQL-server jag använder.

Nu har jag lyckats få till det, nästan.

Jag läser in en rad från text-filen, splittar den på tab till 9 olika element i ett array.
Från detta skulle jag vilja att följande gick att realisera:
INSERT INTO tabellNamn (var1,var2,...) VALUES ( & strFromArray & )

Detta i sig är väl inget problem _om_ jag får till strFromArray som jag vill:
Jag tänkte mig så här:
for-loop el. dyl.
strFromArray = strFromArray & ", " & myArray(i)
början på loop

Problemet med detta är att jag får ett , i början av strängen vilket ej är önskvärt.
Finns det en smidig lösning på detta så jag slipper ett , först i strängen?

MvH
Patrik


Svara

Sv: Läsa från fil, sätta in i databas

Postades av 2002-01-17 20:49:36 - Ulf Elfving

Mid(string, start[, length])

for-loop el. dyl.
strFromArray = strFromArray & ", " & myArray(i)
början på loop

När du loopat klart så kör:
strFromArray = Mid(strFromArray,2)
Då tas alla tecken med från tecken 2 till slutet och ditt inledande komma är borta


Svara

Sv: Läsa från fil, sätta in i databas

Postades av 2002-01-17 21:05:21 - Andreas Hillqvist

Joinfunktionen är motsatsen till Split. Gör exakt det du vill. Slår ihop alla strängarna med en avgränsare:
<code>
strFromArray = Join(myArray,", ")
</code>


Svara

Nyligen

  • 14:16 Indian online casino
  • 14:15 Indian online casino
  • 08:28 Butiksskyltar: Hur upplever utbude
  • 22:31 Slappna av
  • 19:55 kick-off med fokus på hälsa?
  • 19:53 kick-off med fokus på hälsa?
  • 16:24 Föreslå en skönhetsklinik online
  • 16:23 Föreslå en skönhetsklinik online

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 570 843
27 961
271 763
841
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