Avatar billede Ulrich Seniormester
23. august 2004 - 14:47 Der er 6 kommentarer og
1 løsning

Forbindelse til Access database med MySQL..

Hej

Jeg har fået et nyt webhotel, B-one. De understøtter ikke Access forbindelse men SQL. På mit gamle hotel brugte jeg følgende kode:

<%
Dim cnnSimple  ' ADO connection
Dim rstSimple  ' ADO recordset
Dim strDBPath  ' path to our Access database (*.mdb) file

strDBPath = Server.MapPath("../fpdb/Data-Udelys.mdb")
Set cnnSimple = Server.CreateObject("ADODB.Connection")
cnnSimple.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & strDBPath & ";"
Set rstSimple = cnnSimple.Execute("SELECT * FROM SidstGemt")
%>

For at vise en record brugte jeg:

<tr>
<td><font face="Verdana" size="2" color="#FFFFFF">Status læst og gemt den: <%= rstSimple.Fields("GemtDato").Value %></font>
</tr>

Hvad skal jeg skrive for at gøre det samme ved B-One (MySQL og ASP)?
Avatar billede fennec Nybegynder
23. august 2004 - 15:03 #1
cnnSimple.Open "DRIVER={MySQL};SERVER=localhost;DATABASE=[DOMAIN_COM];UID=[DOMAIN_COM];PWD=[PASSWORD];"

Burde gøre det. Du skal bare udfulde DATABASE, UID og PWD med de rigtige oplysninger (som du gerne skulle have fået at vide fra b-one).

Alt andet skulle helst være det samme, medmindre du bruger advanceret SQL-sætninger eller indbyggede funktioner, der evt hedder noget andet i MySQL.

Også er der en lille regel om ikke at oprette identiske ?. Heller ikke i forskellige grupper. Så du skal have lukket et af ?'ende.
Avatar billede arne_v Ekspert
23. august 2004 - 15:40 #2
MyODBC 2.5

DRIVER={MySQL}

MyODBC 3.51:

DRIVER={MySQL ODBC 3.51 Driver}
Avatar billede Ulrich Seniormester
23. august 2004 - 21:24 #3
Tak for det, nu er jeg kommet i gang, men...
Hvor i koden fortæller jeg hvor databasen ligger? Hvor skal den ligge?
Set cnnSimple = Server.CreateObject("ADODB.Connection")
cnnSimple.Open "DRIVER={MySQL};SERVER=localhost;DATABASE=[DOMAIN_COM];UID=[DOMAIN_COM];PWD=[PASSWORD];"
Set rstSimple = cnnSimple.Execute("SELECT * FROM SidstGemt")

DOMAIN_COM og password er fyldt rigtigt ud i min kode.

Fejl:
Error Type:
ADODB.Recordset.1 (0x80004005)
SQLState: S1000 Native Error Code: 1146 [TCX][MyODBC]Table 'DOMAIN_COM.SidstGemt' doesn't exist
Avatar billede arne_v Ekspert
23. august 2004 - 21:30 #4
MySQL er en database server ikke en fil database.

Den skal kun vide server, port (ingen angivet => default 3306) og database.

Men har du oprettet SidstGemt tabellen ?
Avatar billede Ulrich Seniormester
23. august 2004 - 22:00 #5
Jeg har kun .mdb databaser som bliver sendt ud automatisk af FTP.
Dem skal jeg hive data ud af ved hjælp af MySQL.
Database: Data-Udelys.mdb
Tabel: SidstGemt
Celle: GemtDato
Det er ikke sikkert det kan lade sig gøre, jer ved ikke 100% hvordan jeg gør.
Jeg skal have lavet et kald ned i .mdb databasen. Det jeg har sat ind i mit spørgsmål virker, men udbyder hvor dette kode ligger understøtter Microsoft.Jet.OLEDB.4.0.
Hvad skal der til?
Avatar billede fennec Nybegynder
24. august 2004 - 08:35 #6
Du skulle måske kikke her:
http://eksperten.dk/spm/528292
http://eksperten.dk/spm/112541
http://eksperten.dk/spm/388264

Der er mange flere eks på, hvordan man overfører en access database til MySQL her på E. Dette er bare nogle af dem.
Avatar billede Ulrich Seniormester
25. august 2004 - 09:09 #7
Jeg finder noget på div. links
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
Computerworld tilbyder specialiserede kurser i database-management

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