mysql Variablen lesen + schreiben

Hafke

Mitglied
Kann mir jemand sagen oder einen Code posten oder am aller besten ein kleines programm zeigen/programmieren. wie ich mit einer mysql datenbank verbinde und variablen aus einer tabelle in vb variablen laden kann.

ip vom server und so hab ich schon. ich bin seit 3 tagen am foren durchstöbern, ich finde aber immer nur "halbe" antworten. jetz hab ich mir gedacht poste ich die frage einfach mal.

ich bin wirklich am ende und brauch unbedingt hilfe, sei sie noch so kompliziert. hauptsache das tut (am besten ohne treiber (myodbc) aber auch mit wird danken angenommen)
 
Hi

Als erstes googles du dir die Dateien LibMySql.dll und MyVbQL.dll.
Diese kopiert du in dein Systemverzeichnis.
In Visual Basic erstellst du dann unter Projekte einen Verweis auf MySqlApi

Dann erstellst du ein neues Modul und fügst dort diesen Code ein.

' Variablen für den Datenbanc connect definieren
Public oConn As New MYSQL_CONNECTION
Public oRs As MYSQL_RS


' Verbindungsdaten
Public Const sServer As String = "rechnername"
Public Const sUsername As String = "username"
Public Const sPassword As String = "passwort"
Public Const sDBName As String = "datenbankname"


' Fehlerausgabe bei Verbindungsfehler
Public Function MySQL_Error() As Boolean
With oConn.error
If .Number = 0 Then Exit Function
MsgBox "Error " & .Number & ": " & .Description
MySQL_Error = True
End With
End Function

Public Function connect()
oConn.OpenConnection sServer, sUsername, sPassword, sDBName
' Statusabfrage für Verbindung
If (oConn.State = MY_CONN_CLOSED) Then
' Falls Verbindung nicht geöffnet, Fehlerangabe!
MySQL_Error
End If
End Function

Jetzt erstellst du dir eine Form mit diesem Code

connect ' Datenbank verbinden

'SQL-Query an eine Datenbank die natuerlich schon vorhanden sein muss
Set oRs = oConn.Execute("select * from datenbank where feld = 'suchbegriff'")
If oConn.error.Number = 0 Then ' Wenn Query ohne Fehler ausgefuegrt wurde
'Beispiel Ereigniscode
While not ors.eof
variable1=ors.fields(0).value
variable1=ors.fields(1).value
ors.movenext
wend
Else
MySQL_Error
End If
End If
oConn.CloseConnection

Das wars schon. Bei Problemen kannst du dich ja melden
 
Ich versuche auch grad eine Verbindung mit der MySQL Datenbank herzustellen, habe mir auch die Dateien LibMySql.dll und MyVbQL.dll heruntergeladen.
Nun die Frage: Meinst du mit Systemverzeichnis , das Verzeihnis wo VB installiert ist? Wenn ja dann habe ich das gemacht.

"In Visual Basic erstellst du dann unter Projekte einen Verweis auf MySqlApi"

Wie mache ich das?

MyVbQL.dll habe ich registriert und den Code habe ich auch erstellt.
Wenn ich das Programm aufrufen will erscheint die Fehlermeldung
"Benutzerdefinierter Typ nicht definiert"
und VB markiert mir diese Zeile
"Public oConn As New MYSQL_CONNECTION"

Ich denke wenn ich den verweis auf MySqlApi erstelle wird es klappen oder?
 
Servus,

also die MsgBox erscheint schonmal, mit der Meldung dass ich mich mit der Datenbank verbunden habe. Ich denk mal das hat geklappt. Ich würde gerne aber die Felder von der Datenbank anzeigen, dazu fehlt mir aber das FlexGrid!
Wie kann ich so ein FlexGrid einfügen? Ich finde das nicht in meiner Werkzeugliste! :(
 
Hallo

Du must doch kein Flexgrid haben...Ich fülle z.B mit den Daten eine ListViewbox.
Wenn du aber unbedingt ein Flexgrig brauchst must du unter "Komponenten" das Microsoft Flexgrid hinzufügen
 
@spirit:


Ich habe gerade obengeschriebenen Code eingebaut. Ich bekomme nur keine Datensätze aus der Datenbank geliefert.

>variable1=ors.fields(0).value
>variable1=ors.fields(1).value

variable1 ist leer.

wenn du ICQ hast, kannst du dich gerne bei mir melden.

Bye Martin.
 
Bei mir taucht immer ein Fehler auf:

Error 1045: Access denied for user 'web65@A583.c.a.pppool.de' (Using password: YES)
Ich weiß nur, das "A583.c.a.pppool.de" der aufgelöste Name meiner IP ist, aber warum hängt der sich hinten dran und wie kann ich das abschalten?

Und nun? Was kann ich dagegen machen? Die Daten sind alle korrekt, das weiß ich, da ich auch per PHP verbinden und Daten auslesen kann.

Bitte um baldige Antwort!

Prodium
 

Neue Beiträge

Zurück