webForumDet fria alternativet

Importera textfil till Access

ASP

11 svar · 376 visningar · startad av Freestyler

Medlem sedan feb. 20002 218 inlägg
Frågan#1

Har en textfil som är uppbyggd enligt följande

Företagsnamn AB|Storgatan 77 12345 Stockholm|Sverige|08-123456|08-345678
Företag 2|Lillgatan 77 12345 Stockholm|Sverige|08-123456|08-345678

Hur löser jag detta med ASP? Kör PHP i vanliga fall så jag är lite grön.

Vill importera detta till en Access 2000 databas.

Medlem sedan dec. 20003 887 inlägg
#2

Importera med Access. Du kan välja vilket tecken du vill använda som seperationstecken.

Medlem sedan dec. 20003 887 inlägg
#3

Där misstog jag mig visst. Men det är enkelt ordnat. Byt alla |-tecken mot semikolon istället.

Sedan kör du Access. Skapar en tom databas och väljer Get External Data från File-menyn. Sedan kan du gå in på Advanced där och speca ytterligare om det behövs.

Medlem sedan feb. 20002 218 inlägg
#4

Har redan en befintlig databas, men det kanske går lika bra ändå?

Medlem sedan apr. 20031 660 inlägg
#5

HEJ!

Det går utmärkt!
Testa, blir det fel, radera tabellen och gör om.

Det bör även gå att ange vilket tecken man vill ange som delimeter i Access 2000, kan inte tänka mig att det inte går.
Det är så grundläggande att Microsoft borde haft med det tom i den allra första varianten.

Medlem sedan nov. 20017 144 inlägg
#6

Jag skulle använda tabbar som avgränsare.

Medlem sedan apr. 20031 660 inlägg
#7

HEJ!

Jesper T skrev:

Jag skulle använda tabbar som avgränsare.

Har ingen betydelse om det är , ; : aaaa eller tab, så länge det inte blir fel när man läser in datan.

Du har inte missat att han ska importera, inte exportera?
Dvs textfilen är redan skapad (av någon annan?), tolkar frågan som något som ska göras en gång, när databasen konstrueras, och inte kontinuerligt.

Medlem sedan nov. 20017 144 inlägg
#8

Visst man kan använda vad som helst men , och ; m.fl. är ibland förekommande i löpande text och kan därför skapa fel i importen. Principen i ASP är ungefär:

readall = "Din med ex. FSO inlästa textfil"
rowdivider = split(readall,vbCr)
rowcount = ubound(rowdivider)

		For i = 0 to rowcount
			  If not rowdivider(i) = "" then
				clmdivider = split(rowdivider(i),vbTab)
				sql = "INSERT INTO tabell (ett,två,tre,fyra,fem,sex,sju) "&_
						 "VALUES("& clmdivider(0) &",'"& clmdivider(1) &"',"& clmdivider(2) & ",'"&_
						  clmdivider(3) & "','"& clmdivider(4) & "',"& clmdivider(5) & ","& clmdivider(6) & ")"
				connection.execute(sql),,128
					
			  End if
		Next
Medlem sedan dec. 20003 887 inlägg
#9

Jag såg inte hur man väljer eget tecken som avgränsare, men det kanske går om man gräver lite djupare. Droplisten erbjuder komma, semikolon, tabb och mellanslag.

Medlem sedan nov. 20017 144 inlägg
#10

Engine^ skrev:

Jag såg inte hur man väljer eget tecken som avgränsare, men det kanske går om man gräver lite djupare. Droplisten erbjuder komma, semikolon, tabb och mellanslag.

Freestyler skrev:

Hur löser jag detta med ASP?

Medlem sedan apr. 20031 660 inlägg
#11

HEJ!

Ah, NU när jag läser ordentligt, ser jag ju att Freestyler VILL importera med asp, blev förvillad av Engine^s svar. :r
Då fungerar säkert Jesper Ts svar bra!
Jag antar att du vill göra detta ett flertal gånger, och inte enbart vid ett tillfälle, isåfall har du fått hjälp med det också!

Engine^, valfritt tecken finns till höger om listan i Access2002, tror den fanns på samma ställe i tidigare versioner.

Medlem sedan dec. 20003 887 inlägg
#12

J.N. skrev:

HEJ!

Ah, NU när jag läser ordentligt, ser jag ju att Freestyler VILL importera med asp, blev förvillad av Engine^s svar. :r
Då fungerar säkert Jesper Ts svar bra!
Jag antar att du vill göra detta ett flertal gånger, och inte enbart vid ett tillfälle, isåfall har du fått hjälp med det också!

Engine^, valfritt tecken finns till höger om listan i Access2002, tror den fanns på samma ställe i tidigare versioner.

Jag missade att trycka på Next :r

Jag missade även att läsa frågan korrekt, så jag passar på att be om ursäkt jag också :OO

256 ms totalt · 4 externa anrop · v20260731065814-full.86ec41c2
124 ms — deklarationer (db)
0 ms — hämta statistik (cache)
129 ms — hämta tråd, inlägg och bilagor (db)
123 ms — ändringar (db)