18. januar 2004 - 18:11Der er
9 kommentarer og 1 løsning
MySQL og ASP
Nu har jeg altid været vandt til at bruge Access databaser sammen med ASP, men vil egentlig hellere bruge MySQL da det skulle køre bedre og kunne klare flere online brugere på een gang. Jeg kan bare ikke helt finde ud af, hvordan man får det til at arbejde sammen, jeg troede egentlig bare det når man connecter, at koden var forskellig, men det er vidst ikke helt så simpelt?
Jeg er foreløbig gået i stå ved:
Set Conn = Server.CreateObject("ADODB.Connection") Conn.open "Driver={mySQL};Server=localhost;Option=16834;Database=test;"
Hvor jeg får fejlen:
Error Type: Microsoft OLE DB Provider for ODBC Drivers (0x80004005) [Microsoft][ODBC Driver Manager] Data source name not found and no default driver specified /test.asp, line 3
Og såvidt jeg har forstået er det heller ikke helt de samme syntaxer når man kommunikerer med databasen? Hvordan skal de se ud?
Rent SQL-mæssigt er der ikke de store forskelle - fx er datoer er lidt anderledes og man skal benytte LIMIT i stedet for SELECT TOP... men det er lettest at tage hen ad vejen som du støder ind i problemer
<% Set Conn = Server.CreateObject("ADODB.Connection") Conn.open "Driver={MySQL ODBC 3.51 Driver};Server=localhost;Option=16834;Database=database;"
Conn.Execute("Insert Into table(field) value('value')") %>
Gir fejlen:
Error Type: Microsoft OLE DB Provider for ODBC Drivers (0x80040E14) [MySQL][ODBC 3.51 Driver][mysqld-4.0.16-nt]You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near 'table(field) values('test')' at line 1 /test.asp, line 5
<% Set Conn = Server.CreateObject("ADODB.Connection") Conn.open "Driver={MySQL ODBC 3.51 Driver};Server=localhost;Option=16834;Database=database;"
Conn.Execute("Insert Into tabel (FieldName) value('streng')") %>
Får fejlen:
Error Type: Microsoft OLE DB Provider for ODBC Drivers (0x80040E14) [MySQL][ODBC 3.51 Driver][mysqld-4.0.16-nt]You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near 'value('streng')' at line 1 /test.asp, line 5
Og min database hedder bare "database" tablen hedder "tabel" kolonnen hedder "FieldName" for at det var nemmere at overskue, her mens jeg prøver at få det til at virke.
Det var Tintiny (hvad det så er) med en længde på 3, det var nok derfor :)
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.