Avatar billede ares Nybegynder
10. juni 2003 - 22:01 Der er 32 kommentarer og
1 løsning

Fra text til Access

Hej

Jeg skal overføre en semikolon adskilt fil, til en access database. Jeg har fundet frem til følgende:

set conn = Server.CreateObject("ADODB.Connection")
Conn.Open "PROVIDER=MSDASQL;" & "DRIVER={Microsoft Access Driver (*.mdb)}; " & "DBQ=" & server.mappath("../emk_v20_data.asp")

DelSQL = "delete * from Jung_vare"
Conn.Execute(DelSQL)

Response.write "De gamle data er slettet ! - Systemet gemme de nye data, vent!"

SQL = "SELECT * FROM jung_vare"
Set RS = Server.CreateObject("ADODB.Recordset")
RS.Open SQL, conn, 3, 3

Set op = CreateObject("Scripting.FileSystemObject")
Set fil = op.OpenTextFile(server.mappath("jung.txt"))

do while not fil.AtEndOfStream
    Line = fil.readline
    LineSplit = split(Line,";")

  RS.Addnew
    RS("KatagorID") = Linesplit(0)
    RS("Brand") = Linesplit(1)
    RS("Varetekst") = Linesplit(2)
    RS("prof") = Linesplit(3)
    RS("Viola") = Linesplit(4)
RS.Update
loop


set fso = server.createobject("scripting.filesystemobject")
fso.deletefile(Fil)
set fso = nothing


set fil = nothing
set RS = nothing

Men det virker som om den loop'er i det uendelige... Selv med 5 linjer i text filen, går den i stå. Hvad kan der værer galt.

På for hånd tak.

Peter.
Avatar billede kovalt Nybegynder
10. juni 2003 - 22:04 #1
hvad er det for en fejl du får?
Avatar billede ares Nybegynder
10. juni 2003 - 22:09 #2
Det er mit største problem... jeg får ikke nogen fejlmeddelse... der er bare et hvidt vindue, og uanset hvor lang tid den står... ved bliver den bare at være hvid.
Avatar billede kovalt Nybegynder
10. juni 2003 - 22:12 #3
Hvad er din hensigt med denne SQL

SQL = "SELECT * FROM jung_vare"
Set RS = Server.CreateObject("ADODB.Recordset")
RS.Open SQL, conn, 3, 3
Avatar billede ares Nybegynder
10. juni 2003 - 22:17 #4
At fortælle hvor i databasen, der skal tilføjes poster
Avatar billede kovalt Nybegynder
10. juni 2003 - 22:19 #5
Du mangler da også at lave connectionen til din database!
Avatar billede ares Nybegynder
10. juni 2003 - 22:20 #6
Det burde: RS.Open SQL, conn, 3, 3
sikre...
Avatar billede kovalt Nybegynder
10. juni 2003 - 22:24 #7
Prøv det her:

set conn = Server.CreateObject("ADODB.Connection")
Conn.Open "PROVIDER=MSDASQL;" & "DRIVER={Microsoft Access Driver (*.mdb)}; " & "DBQ=" & server.mappath("../emk_v20_data.asp")

DelSQL = "delete * from Jung_vare"
Conn.Execute(DelSQL)

Response.write "De gamle data er slettet ! - Systemet gemme de nye data, vent!"

Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open("DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" + Server.MapPath("dinDabatase"))

Set op = CreateObject("Scripting.FileSystemObject")
Set fil = op.OpenTextFile(server.mappath("jung.txt"))

do while not fil.AtEndOfStream
    Line = fil.readline
    LineSplit = split(Line,";")

strSQL = "UPDATE jung_vare SET KatagorID = "& Linesplit(0) &", Brand = "& Linesplit(1) &", Varetekst = "& Linesplit(2) &", prof = "& Linesplit(3) &",
Viola = "& Linesplit(4) &"
conn.execute(strSQL)

loop


set fso = server.createobject("scripting.filesystemobject")
fso.deletefile(Fil)
set fso = nothing


set fil = nothing
set RS = nothing
Avatar billede kovalt Nybegynder
10. juni 2003 - 22:25 #8
Det her:

strSQL = "UPDATE jung_vare SET KatagorID = "& Linesplit(0) &", Brand = "& Linesplit(1) &", Varetekst = "& Linesplit(2) &", prof = "& Linesplit(3) &",
Viola = "& Linesplit(4) &"
conn.execute(strSQL)

skal nok lige rettes til:

strSQL = "UPDATE jung_vare SET KatagorID = "& Linesplit(0) &", Brand = '"& Linesplit(1) &"', Varetekst = '"& Linesplit(2) &"', prof = '"& Linesplit(3) &"', Viola = '"& Linesplit(4) &"'
conn.execute(strSQL)
Avatar billede ares Nybegynder
10. juni 2003 - 22:29 #9
Det er det samme...
Avatar billede ares Nybegynder
10. juni 2003 - 22:31 #10
hmmm.... fik denne her...

Microsoft VBScript runtime error '800a01ad'

ActiveX component can't create object: 'Scripting.FileSystemObject'

/intra/jung_import.asp, line 22

Det her er linje 22

22 Set op = CreateObject("Scripting.FileSystemObject")
23 Set fil = op.OpenTextFile(server.mappath("jung.txt"))
Avatar billede kovalt Nybegynder
10. juni 2003 - 22:32 #11
hvad siger den til:

Set op = CreateObject("Scripting.FileSystemObject")
Set fil = op.OpenTextFile(server.mappath("jung.txt"))

i = 0
do while not fil.AtEndOfStream
    Line = fil.readline
    i = i + 1
    response.write "Her kommer linie " & i & Line   
loop

set fso = server.createobject("scripting.filesystemobject")
fso.deletefile(Fil)
set fso = nothing

set fil = nothing
set RS = nothing
Avatar billede kovalt Nybegynder
10. juni 2003 - 22:33 #12
hvilken udgave af ADO bruger du?
Avatar billede ares Nybegynder
10. juni 2003 - 22:34 #13
Microsoft VBScript runtime error '800a01ad'

ActiveX component can't create object: 'Scripting.FileSystemObject'

/intra/jung_import.asp, line 22
Avatar billede kovalt Nybegynder
10. juni 2003 - 22:35 #14
Hvad hvis du lige skriver server ind i linie 22 sådan her:

Set op = Server.CreateObject("Scripting.FileSystemObject")
Avatar billede ares Nybegynder
10. juni 2003 - 22:37 #15
hmm... ADO.... det ved jeg faktisk ikke... bruger Wannafind.dk
Avatar billede ares Nybegynder
10. juni 2003 - 22:38 #16
Server object error 'ASP 0177 : 800401f3'

Server.CreateObject Failed

/intra/jung_import.asp, line 22

Invalid ProgID. For additional information specific to this message please visit the Microsoft Online Support site located at: http://www.microsoft.com/contentredirect.asp.
Avatar billede kovalt Nybegynder
10. juni 2003 - 22:38 #17
OK der er jeg selv og det virker med deres ADO

Hvad sker der hvis du lige skriver server
Avatar billede ares Nybegynder
10. juni 2003 - 22:38 #18
Server.. hvad.. hvor... ???
Avatar billede ares Nybegynder
10. juni 2003 - 22:40 #19
ahh... Server.creatobject... det virker heller ikke...

Server object error 'ASP 0177 : 800401f3'

Server.CreateObject Failed

/intra/jung_import.asp, line 22

Invalid ProgID. For additional information specific to this message please visit the Microsoft Online Support site located at: http://www.microsoft.com/contentredirect.asp.
Avatar billede kovalt Nybegynder
10. juni 2003 - 22:41 #20
Virker det her?

Set objFSO = Server.CreateObject("Scripting.FileSystemObject")

const fsoForReading = 1

Set op = objFSO.OpenTextFile(Server.MapPath("jung.txt"), fsoForReading)

Do While Not op.AtEndOfStream
    Response.Write "" & op.ReadLine & "<br>"
Loop

op.Close
Set op= Nothing
Avatar billede ares Nybegynder
10. juni 2003 - 22:42 #21
niks...

det er det samme...
Avatar billede kovalt Nybegynder
10. juni 2003 - 22:43 #22
sker der ingenting eller kommer den med en fejl?=
Avatar billede ares Nybegynder
10. juni 2003 - 22:44 #23
samme fejl..

Server object error 'ASP 0177 : 800401f3'

Server.CreateObject Failed

/intra/jung_import.asp, line 22
Avatar billede punnishment Nybegynder
10. juni 2003 - 22:47 #24
det er nok fordi du giver den en uendelig loop.
nu ved jeg ik hvordan man gør med fso, men i database forbindelser laver man et loop sådan her


do while not rs.eof
' action
rs.movenext ' DENNE HER GLEMMER I!! (oversættes til FSO)
loop
Avatar billede kovalt Nybegynder
10. juni 2003 - 22:47 #25
Denne kode virker ved mig:

<% Option Explicit %>

<%
Dim objFSO
Set objFSO = Server.CreateObject("Scripting.FileSystemObject")

Dim op

const fsoForReading = 1

Set op = objFSO.OpenTextFile(Server.MapPath("jung.txt"), fsoForReading)

    Response.Write "" & op.ReadAll & "<br>"

    op.Close
    Set op= Nothing

Set objFSO = Nothing %>
Avatar billede punnishment Nybegynder
10. juni 2003 - 22:50 #26
hmm, bare ignorere min.
Efter 1 minuts undersøgelser har jeg fundet frem til at man ikke laver sådan en movenext i FSO
Avatar billede kovalt Nybegynder
10. juni 2003 - 22:51 #27
Sådan her naturligvis - den anden var jo for hele dokumentet som et samlet - her er den med readLine og Loop

<% @ LANGUAGE="VBSCRIPT" %>
<% Option Explicit %>

<% Dim objFSO
Set objFSO = Server.CreateObject("Scripting.FileSystemObject")

Dim op

const fsoForReading = 1

Set op = objFSO.OpenTextFile(Server.MapPath("jung.txt"), fsoForReading)

Do While Not op.AtEndOfStream
    Response.Write "" & op.ReadLine & "<br>"
Loop

op.Close
Set op = Nothing

Set objFSO = Nothing %>
Avatar billede kovalt Nybegynder
10. juni 2003 - 22:52 #28
punnishment -->

Hedder det ikke også

while not rs.EOF
' action
rs.MoveNext
Wend

og

do while not rs.EOF
'action
Loop
Avatar billede kovalt Nybegynder
10. juni 2003 - 22:53 #29
ares --> kan du få den til at læse filen med det sidste jeg sendte?
Avatar billede ares Nybegynder
10. juni 2003 - 22:57 #30
nej det er det samme...

Server object error 'ASP 0177 : 800401f3'

Server.CreateObject Failed

/intra/jung_import.asp, line X

Invalid ProgID. For additional information specific to this message please visit the Microsoft Online Support site located at: http://www.microsoft.com/contentredirect.asp.
Avatar billede kovalt Nybegynder
10. juni 2003 - 23:14 #31
hvilket hotel er det du har på wannafind?
Avatar billede ares Nybegynder
11. juni 2003 - 11:19 #32
øhhh... luksus suite.... så der burde ikke værer nogen ko på isen...
Avatar billede ares Nybegynder
11. juni 2003 - 11:40 #33
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
Kurser inden for grundlæggende programmering

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