18. august 2003 - 16:00Der er
23 kommentarer og 2 løsninger
ODBC database fejlmelding
Hej. Jeg har lavet en ASP-script men der er åbenbart et eller andet galt med min ODBC opsætning. Den kommer med følgende fejlmelding:
Fejltype: Microsoft OLE DB Provider for ODBC Drivers (0x80004005) Den angivne driver kunne ikke indlæses på grund af systemfejlen 5 (Driver do Microsoft Access (*.mdb)).
Jeg har oprettet databasen under System-DNS og den står med navn bagefter, så det burde jo virke.
Nogen der har nogle gode ideer?
Koden burde virke da det er efter en bog da jeg er i gang med noget kursus. Der står bare ikke noget om dette lille ODBC problem. :-(
jeg laver en system dsn og vælger: microsoft Access driver (*.mdb) og kalder min data source name (DSN) til min dsn, og vælger min DB. Også på min asp side kalder jeg den på den måde: <% Set cn = Server.CreateObject("ADODB.Connection") Set rs = Server.CreateObject("ADODB.Recordset")
jeg prøvede din egen kode det virker fint, også på følgende måde virkede fint: ... Set objConn = Server.CreateObject("ADODB.Connection") objConn.Open "northwind" strQuery = "SELECT Productname, UnitPrice FROM Products " ...
Prøv at lave en anden system dsn, måske fejlen ligger der!
Synes godt om
Slettet bruger
19. august 2003 - 09:52#7
Det er sgu mystisk. Jeg prøver lige at skære ud i pap hvad jeg gør, så kan det være i kan se hvad jeg gør af fejl, for det ligger jo åbenbart i ODBC'en.
Først åbner jeg datakilder, går ind under System-DSN, tilføjer Microsoft Access database, skriver i datakildenavnet navnet på min database (Filnavnet) "Nwind", under database vælger jeg databasen og sidst trykker jeg OK og går ud. Er det nok og gør jeg det rigtigt???
prøv at vælge: Driver do Microsoft Access (*.mdb) eller en helt 3. der kan åbne *.mdb istedet og se om det hjælper
Synes godt om
Slettet bruger
19. august 2003 - 12:38#12
Jeg havde brugt "Driver do Microsoft Access" indtil nu, men prøvede også den anden "Microsoft Access Driver" men den giver stadig det samme svar. Er nogle af de andre der skal sættes op (Bruger-DSN) osv.. ??? Skal jeg skrive hele filnavnet under Datakildenavn eller er selve navnet uden .mdb nok? Fejlen må jo ligge et sted.....
Synes godt om
Slettet bruger
19. august 2003 - 12:39#13
Hvad med det der hedder systemdatabase nederst, skal det bruges til noget? Der står ingen lige nu hos mig.
Synes godt om
Slettet bruger
19. august 2003 - 12:41#14
Jeg har nu kun valgt "Microsoft Access Driver" og den kommer med følgende fejl:
Fejltype: Microsoft OLE DB Provider for ODBC Drivers (0x80004005) [Microsoft][ODBC Driver Manager] Datakildenavnet blev ikke fundet, og der er ikke angivet en standarddriver. /testdata.asp, line 10
Min kode er følgende:
<% @LANGUAGE = VBScript %> <% Option Explicit Response.Expires = 0 Dim objConn, objRS, strQuery Dim strConnection
Set objConn = Server.CreateObject("ADODB.Connection") objConn.Open "northwind" strQuery = "SELECT Productname, UnitPrice FROM Products "
strQuery = strQuery & "ORDER BY Productname" Set objRS = objConn.Execute(strQuery) %> <HTML> <BODY> All products stored in the Products table, ordered by product name: <BR><BR> <% While Not objRS.EOF Response.Write objRS("Productname") & " (" Response.Write FormatCurrency(objRS("UnitPrice")) & ")<BR>" objRS.MoveNext Wend
objRS.close objConn.close Set objRS = Nothing set objConn = Nothing %> </BODY> </HTML>
Du kan sagtens bruge kun System-DNS. Du skal kun angive datakildenavn og vælg hvor databasen ligge. I datakildenavn skal du bare sørge for at navnet er det samme som den du åbner i ASP filen (altså "northwind" i dit tilfælde uden filendelse. Behøver ikke hedde det samme som filen)
Dit datakildenavn er derfor forkert som du jo har skrevet at du angav som "Nwind" tidligere. Det skal være "northwind" istedet.
Synes godt om
Slettet bruger
19. august 2003 - 14:23#17
Yeps, du har ret. Navnet var forkert. :-) Men det hjælper stadig ikke, den kommer stadig med en fejl. Har prøvet at kører udenom ODBC men en direkte sti til databasen i ASP filen men den skriver stadig denne fejlmeddelse:
Fejltype: Microsoft OLE DB Provider for ODBC Drivers (0x80004005) Den angivne driver kunne ikke indlæses på grund af systemfejlen 5 (Microsoft Access Driver (*.mdb)). /soeg.asp, line 11
Det gør du sådan her: ' Opretter forbindelse til database Set Conn = Server.CreateObject("ADODB.Connection") DSN = "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath("/minsti/Nwind.mdb") Conn.Open DSN
Synes godt om
Slettet bruger
19. august 2003 - 16:01#21
Den skriver sgu det samme.. DET ER DA BELASTENDE.... Kan de være mine drivere der er ged i eller hvad?
Ok jeg ved simpelhen ikke hvad der er galt. Så jeg kan ikke hjælpe dig videre, måske en anden kan eller hvis du finder ud af hvad systemfejlen 5 betyder. Måske er der noget der skal geninstalleres. Jeg er ked af at jeg ikke kan hjælpe dig videre.
Synes godt om
Slettet bruger
19. august 2003 - 16:41#23
Okay, men du har jo prøvet at hjælpe og mere kan jeg jo ikke forlange. :-) Så mange tak....
Q: I am having a problem with some ASP code that is connecting to Access using ADO -- the code is returning an error 80004005.
A: The latest MDAC drivers (anything in the past six months), and especially the Access ODBC driver, have a "feature" that REQUIRES a SYSTEM temp variable be establised. This is done from right clicking My Computer, choosing Properties, Environment, and adding the system variables of TMP C:\TEMP and TEMP C:\TEMP.
Synes godt om
Slettet bruger
20. august 2003 - 10:14#25
Øv, jeg håbede lige du havde fundet løsningen - men den giver desværre stadig den samme fejlmeddelsen efter jeg har ændret system variablerne. :-( Ellers et ret godt forslag.!
Synes godt om
Ny brugerNybegynder
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.