Avatar billede perfi Nybegynder
15. oktober 2001 - 11:41 Der er 13 kommentarer og
1 løsning

DYNAMISK DATABASE FORBINDELSE

Hej

Er ny til ASP. Jeg har lavet et website som har 2 databaser tilknyttet. Jeg benytter Access datatase. Jeg vil gerne dynamisk ODBC forbinde, og har fået et KODESTUMP smidt i nakken af udbyderen, som også er fint, men det spiller ikke helt, for jeg ved ikke hvad jeg skal erstatte i kodestumpen. Jeg har kigget i et par af mine bøger, uden held. min databaser hedder tronics_db.mdb (alias navn: gods_db) og tronics_valuta.mdb (alias navn: valuta_db). Hvad skal jeg putter ind hvor ??? Stien til databaserne ligger (root)/test/her.... Der er ikke noget password og brugernavn tilknyttet databasen....HVAD GØR JEG ??
Hilsen perfi...

Her er koden fra udbyderen:

<!--METADATA NAME=\"Microsoft ActiveX Data Objects 2.5 Library\" TYPE=\"TypeLib\" UUID=\"{00000205-0000-0010-8000-00AA006D2EA4}\"-->

        dim sPath, sDatabase, sUserID, sPassword

        Application(\"HOME\") = \"/\" 

        Application(\"DEBUG\") = true

        Application(\"LANGUAGE\") = \"DK\"

        sPath          = Server.MapPath(Application(\"HOME\")) & \"\\_private\\\"

        sDatabase      = \"iWeb.mdb\"

        sUserID        = \"\"

        sPassword      = \"\"

       

        Application(\"DSN\") = \"DRIVER={Microsoft Access Driver (*.mdb)};\" _

                                          & \"DBQ=\" & sPath & sDatabase


Avatar billede j.robert Nybegynder
15. oktober 2001 - 11:46 #1
For det første så er en jetdriver faktisk at foretrække til en Access database.
Nå, pyt.
Du skal bare placere din database i mappen \"_privat\"
Avatar billede j.robert Nybegynder
15. oktober 2001 - 11:47 #2
Hvis du har userID eller password på din database, skal du selvfølgelig skrive det under \"sUserID\" og \"sPassword\".

Avatar billede j.robert Nybegynder
15. oktober 2001 - 11:49 #3
Ellers skal du placere din database i den mappe din udbyder har angivet med write rettigheder.

Du skal så rette stien i sPath til den mappe:
sPath=Server.MapPath(Application(\"HOME\")) & \"\\nymappemedwriterettighed\\\"
Avatar billede perfi Nybegynder
15. oktober 2001 - 12:14 #4
Hej j.robert

Det spillede ikke helt...

fejl meddelse er:
Microsoft OLE DB Provider for ODBC Drivers error \'80004005\'

[Microsoft][ODBC Driver Manager] Data source name not found and no default driver specified

/test/default.asp, line 85

Linie 85 indeholder :
set q_str = Server.CreateObject(\"ADODB.Connection\")
          q_str.Open \"tronics_db.mdb\"
          set Q_res = q_str.Execute(sqlString)

Sådan som jeg gjorde det under udviklingen, ODBC forbandt jeg dem under systemDNS.

Jeg kan ikke se hvad problemet er???

KODEN SER SÅLEDES UD EFTER JEG HAR INDSAT MINE EGNE DATAER:
dim sPath, sDatabase, sUserID,  sPassword
Application(\"HOME\") = \"/test/\"
Application(\"DEBUG\") = true
Application(\"LANGUAGE\") = \"DK\"
sPath = Server.MapPath(Application(\"HOME\")) & \"\\db\\\"
sDatabase = \"tronics_db.mdb\"
sUserID = \"\"
sPassword = \"\"
Application(\"DSN\") = \"DRIVER={Microsoft Access Driver (*.mdb)};\" _
& \"DBQ=\" & sPath & sDatabase

Håber det kan løses

(._.)perfi
Avatar billede eagleeye Praktikant
15. oktober 2001 - 12:58 #5
du forsøger at åbne en database som ligger i:
/test/\\db\\  Det ville jeg tror gik lidt galt

Måske sPath skal rettes til:

sPath = Server.MapPath(Application(\"HOME\")) & \"db/\"

Hvis du har alias navne hos din udbyder behøver du vel ikke skrive stien til databasen de skulle da gerne ligge DSN definitionen.

q_str.Open \"gods_db\"
         
Avatar billede perfi Nybegynder
15. oktober 2001 - 14:46 #6
Hej eagleeye..

Nej alias navne var noget jeg selv havde i min egen ODBC opsætning her p´å min COMPUTER. Nu er jeg som sagt ingen haj til ASP, men skal man ikke oprettes et Serverobjekt når man dynamiske forbinder ODBC. For den brokker sig over disse linier:

set q_str = Server.CreateObject(\"ADODB.Connection\")
          q_str.Open \"tronics_db.mdb\"

???????????? er på herrens mark. Måske skulle jeg bare bede udbyderen om at oprette ODBC link for mig.

Men det ville da være rart at kunne benytte det til et senere tidspunkt...

(._.)perfi
Avatar billede eagleeye Praktikant
15. oktober 2001 - 15:40 #7
du skal angive en driver som du vil benytte til din database:

q_str.Open \"Provider=Microsoft.JET.OLEDB.4.0;DATA SOURCE=\" & dbPath

dbPath skal være stien til din database:
d:\\db\\tronics_db.mdb
eller med Server.Mappath(\"\\db\\tronics_db.mdb\")
Avatar billede eagleeye Praktikant
15. oktober 2001 - 15:42 #8
hos azero ligger db\'en i en DB folder og stien bliver:
D:\\home\\xxxx\\db\\      \'xxxx er så brugernavn

og så bliver dbPath: D:\\home\\xxxx\\db\\tronics_db.mdb
Avatar billede eagleeye Praktikant
15. oktober 2001 - 15:44 #9
>>Måske skulle jeg bare bede udbyderen om at oprette ODBC link for mig.

Det skulle være muligt med DSN-less forbindelse til databasen. Det kræver at du kender stien til databasen.

Hvilken udbyder har du?
Avatar billede perfi Nybegynder
15. oktober 2001 - 17:32 #10
>>Hvilken udbyder har du?
webpartner.dk
Stien på mit domaine er /multitronics.dk/test/db/tronics_db.mdb
Avatar billede eagleeye Praktikant
15. oktober 2001 - 17:40 #11
havd med:
q_str.Open \"Provider=Microsoft.JET.OLEDB.4.0;DATA SOURCE=/multitronics.dk/test/db/tronics_db.mdb\"

eller:
q_str.Open \"Provider=Microsoft.JET.OLEDB.4.0;DATA SOURCE=\"&Server.Mappath(\"/multitronics.dk/test/db/tronics_db.mdb\")
Avatar billede j.robert Nybegynder
15. oktober 2001 - 20:38 #12
Prøv denne hér istedet:

dim sPath, sDatabase, sUserID,  sPassword
Application(\"HOME\") = \"/test/\"
Application(\"DEBUG\") = true
Application(\"LANGUAGE\") = \"DK\"
sPath = Server.MapPath(Application(\"HOME\")) & \"db\\\" // Hér har jeg lavet en ændring
sDatabase = \"tronics_db.mdb\"
sUserID = \"\"
sPassword = \"\"
Application(\"DSN\") = \"DRIVER={Microsoft Access Driver (*.mdb)};\" _
& \"DBQ=\" & sPath & sDatabase
Avatar billede perfi Nybegynder
16. oktober 2001 - 10:55 #13
Hej r.robert & eagleeye

Jeg tjekker lige de forslag når jeg kommer hjem senere idag. Vender tilbage i løbet af aftenen. p.t. tak..

(._.) Perfi
Avatar billede perfi Nybegynder
14. november 2001 - 08:48 #14
Hej

Dette spørgsmål havde jeg glemt...Jeg har fundet ud af det selv, men det ligner hvad eagleeye kom op med, men da han ikke har svaret men kommenteret, så skylder jeg ham 50 point...

perfi
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