hallo leute,
ich habe eine mysql datenbank unter localhost, auf das ich per odbc mit einem eingerichteten test-dsn zugreifen kann.
nun möchte ich dasselbe mit einer datenbank machen, das bei hosteurope liegt.
port 3306 ist offen. die datenbank ist nach ausßen erreichbar. mit dem mysql workbench kann ich auf den ohne probleme zugreifen.
so nun habe ich eine system-dsn für den angelegt, im grunde genauso wie für die localhost-variante.
dennoch teilt mir purebasic sowas wunderschönes wie das hier mit:
[Microsoft][ODBC Driver Manager] Der Datenquellenname wurde nicht gefunden, und es wurde keine Standardtreiber angegeben.
Es ist derselbe code, das mit der localhost und dsn läuft.
ich habe keine ahnung was daran falsch ist. bei der einrichtung des dsn klicke ich auf "test-button" und der teilt mir mit, das die verbindung zum datenbank steht.
das ist wohl kein code-fehler, eher wohl eine einstellungssache. was muss ich machen?
Für dsn ist angegeben:
data source name, server [wp*.webpack.hosteurope.de], user dbu*, password *, datenbank db*.
standardport.
MySQL ODBC 3.51 Driver.
hat jemand eine idee?
mfg
kurt
odbc
Re: odbc
Windows ? x86 oder x64 ? Wie sieht der Code für Localhost aus ?
Also der Teil wo die Datenbank geöffnet wird...
Also der Teil wo die Datenbank geöffnet wird...
PureBasic 6.21 (Windows x86/x64) | Windows11 Pro x64 | AsRock B850 Steel Legend Wifi | R7 9800x3D | 64GB RAM | GeForce RTX 5080 | ThermaltakeView 270 TG ARGB | build by vannicom
-
- Beiträge: 173
- Registriert: 30.11.2010 02:34
Re: odbc
win7prof 32bit,
code:
mfg
kurt
code:
Code: Alles auswählen
InitNetwork()
UseODBCDatabase()
Global src_host.s = ""
Global src_port.l = 3306
Global src_conn.s = ""
Global src_user.s = ""
Global src_pass.s = ""
If ReadFile( 100, "server.dat" )
src_host = ReadString(100)
src_conn = ReadString(100)
src_user = ReadString(100)
src_pass = ReadString(100)
CloseFile(100)
EndIf
Global conn.l = OpenNetworkConnection( src_host, src_port )
Global dbac.l = OpenDatabase( #PB_Any, src_conn, src_user, src_pass )
If dbac = 0
MessageRequester( "Fehler", DatabaseError() )
End
EndIf
kurt
Re: odbc
Also da ich keine Ahnung habe was deine Variable src_conn enthält...
Bei Opendatabase per ODBC wird der DSN Name als DatabaseName erwartet.
Username und Passwort kann man dann leerlassen, da sie in der SystemDSN schon angegeben sind.
Also in deinem Fall : OpenDatabase(#PB_ANY, "data source name","","")
Allerdings... Wenn du Win7 als 64Bit Version installiert hast, gibts Probleme mit dem 3.51 Treiber.
der ist nur unter 32Bit Windows funktionsfähig.
Und wenn das alles bei dir stimmt, dann hast du wohl einen Fehler beim anlegen der Systemdsn gemacht.Es muss auch eine Datenbank ausgewählt sein, damit es funktioniert.
Bei Opendatabase per ODBC wird der DSN Name als DatabaseName erwartet.
Username und Passwort kann man dann leerlassen, da sie in der SystemDSN schon angegeben sind.
Also in deinem Fall : OpenDatabase(#PB_ANY, "data source name","","")
Allerdings... Wenn du Win7 als 64Bit Version installiert hast, gibts Probleme mit dem 3.51 Treiber.
der ist nur unter 32Bit Windows funktionsfähig.
Und wenn das alles bei dir stimmt, dann hast du wohl einen Fehler beim anlegen der Systemdsn gemacht.Es muss auch eine Datenbank ausgewählt sein, damit es funktioniert.
PureBasic 6.21 (Windows x86/x64) | Windows11 Pro x64 | AsRock B850 Steel Legend Wifi | R7 9800x3D | 64GB RAM | GeForce RTX 5080 | ThermaltakeView 270 TG ARGB | build by vannicom