Avatar billede Slettet bruger
23. november 2000 - 10:29 Der er 9 kommentarer og
1 løsning

objConn.open fejl.

Jeg har fået et eksempel jeg skulle prøve at ¨bruge, men der kommer fejl i det. Jeg kan ikke lige overskue hvad der kan være galt. Sikkert noget meget simpelt. Asp side og database (access 2000) ligger i samme dir/mappe. Det er disse linier:

Dim objConn
SET objConn=Server.CreateObject(\"ADODB.Connection\")
objConn.ConnectionString=\"DRIVER={Microsoft Access Driver(*.mdb)};\" & \"DBQ=natur.mdb\"
objConn.open

og linien objConn.open (linie 33) giver følgende fejl:

Microsoft OLE DB Provider for ODBC Drivers error \'80004005\'

[Microsoft][ODBC Driver Manager] Datakildenavnet blev ikke fundet, og der er ikke angivet en standarddriver.

/search.asp, line 33

Er den svær (flere point, eller er den let).
På forhånd tak for hjælpen.
Avatar billede tdaugaard Nybegynder
23. november 2000 - 10:35 #1
der mangler et mellemrum i driver navnet..

objConn.ConnectionString=\"DRIVER={Microsoft Access Driver (*.mdb)};\" & \"DBQ=natur.mdb\"

brug den istedet-..
Avatar billede Slettet bruger
23. november 2000 - 10:38 #2
Så får jeg denne:
Microsoft OLE DB Provider for ODBC Drivers error \'80004005\'

[Microsoft][ODBC Microsoft Access-driver] Filen \"(ukendt)\" kan ikke findes.

/search.asp, line 33

Skal hele stien skrives (den fysiske) ? det prøver jeg.
Avatar billede Slettet bruger
23. november 2000 - 10:39 #3
Det hjalp med hele stien. Nu kommer der andre fejl ;-) Så sikkert flere point i et nyt spørgsmål. TAK for hjælpen.
Avatar billede tdaugaard Nybegynder
23. november 2000 - 11:52 #4
*s* jeg tænkte nok der var en fejl med DB\'en, men jeg havde travlt med at komme ud af døren .. jeg skulle til et møde, men du kan da lige få et lille hint med på vejen:

objConn.ConnectionString=\"DRIVER={Microsoft Access Driver (*.mdb)};\" & \"DBQ=\" & Server.MapPath(\"natur.mdb\")

Server.MapPath(\"fil\") returnere den fysiske sti på serveren til databasen, eller en hvilken som helst fil. Den er meget nyttig i den sammenhæng her. Så er du ikke afhængig af hard-codede stier.
Avatar billede Slettet bruger
23. november 2000 - 11:55 #5
Aha. Tak for det. Det vil sige, at når den har filnavnet, så søger den selv efter stien. Det er jo smart, bare man ikke har flere der hedder det samme så :-)

Avatar billede tdaugaard Nybegynder
23. november 2000 - 12:00 #6
Server.MapPath virker på den måde, at lad os sige du har en fil liggende i roden af dit webhotel/domæne. Din server plads ligger så måske på serveren som:

d:\\www\\www.ditdom.dk\\

hvis du så skriver

Response.Write Server.MapPath(\"minfil.mdb\") så vil flg. blive udskrevet:
d:\\www\\www.ditdom.dk\\minfil.mdb

det gør så at du kan lægge dit script hvor som helst uden at skulle omkode stien.
Avatar billede Slettet bruger
23. november 2000 - 12:03 #7
Ok. Jeg prøvede lige din linie, hvor .mdb\'en lå i en anden mappe, og det virkede kke :-)  Det skal altså være i roden af serveren.
Det skal lige prøves.
Avatar billede tdaugaard Nybegynder
23. november 2000 - 12:05 #8
Hvis din DB hedder natur.mdb, og den ligger i samme mappe som scriptet der skal bruge den, så vil

objConn.ConnectionString=\"DRIVER={Microsoft Access Driver (*.mdb)};\" & \"DBQ=\" & Server.MapPath(\"natur.mdb\")

virke helt fint. Ellers er der noget andet galt, men det kan man jo lege med og prøve sig frem :)
Avatar billede Slettet bruger
23. november 2000 - 12:07 #9
Ja ok. Jeg har lige prøvet i en anden mappe og i roden, og så kan den ikke finde den. Men skidt med det lige nu :-) Der er så mange andre fejl jeg prøvet at finde løsninger på. Men tak for dine tips.

Avatar billede tdaugaard Nybegynder
23. november 2000 - 12:09 #10
*g* det var så lidt :)
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