# VB6 & Mysql Help



## CrimeTime (24. Mai 2007)

Hallo leute,
kann mir jemand von euch erklären wie ich mit visualbasic6 von einer Mysql Datenbank tabels abfragen kann oder in die tabels was eintragen kann wäre sehr nett.

p.s. die Connection besteht schon.
Gruss CrimeTime


----------



## Alex F. (24. Mai 2007)

Abfragen: Über Recordsets BSP

```
Dim res as adodb.recordset 

set res = connect.Openrecordset("Select Feld1 From Tabelle1") 

While not res.eof
   debug.print res!Feld1 
   debug.Print res.Fields("Feld1").value ' alternative 1
   debug.Print res.Fields(0).value ' alternative 1
   res.eof
wend
```

Eintragen kannst du über die 
Connection.Execute Methode 
BSP : 


```
connect.Execute ( "INsert into Tabelle1 (Feld1) Values ('Pipapo') ")
```

oder einfach wie 1 einfach überschreiben und ein Res.Update aufrufen 

Grüsse bb


----------



## CrimeTime (24. Mai 2007)

danke werde es sofort versuchen


----------



## CrimeTime (24. Mai 2007)

wie mache ich es wenn ich es so habe

dim Username as string

username = xyz data

connect.Execute ( "INsert into Tabelle1 (users) Values ('nur wie hier? das der Username da is') ")


----------



## Alex F. (24. Mai 2007)

```
dim username as string
username = "Gustav Gans"
connect.Execute ( "INsert into Tabelle1 (users) Values ( ' " & username  & " ' )" )
```

Grüsse bb


----------



## ronaldh (24. Mai 2007)

Ich empfehle Dir, mal folgendes durchzuarbeiten:

http://www.activevb.de/tipps/tipkat/kat9.html

Dann kommst Du sicherlich weiter.

Grüsse
ronaldh


----------



## CrimeTime (24. Mai 2007)

danke Brain 

kannste mir auch noch sagen wie ich sowas auslese

z.b.

ich brauche den Username von der Datenbank oder das Password.


----------



## Alex F. (25. Mai 2007)

wie oben beschrieben

```
Dim res as adodb.recordset  
set res = connect.Openrecordset("Select PWD From Tabelle1")  
While not res.eof   
debug.print res!PWD    
debug.Print res.Fields("PWD").value ' alternative 1 
 debug.Print res.Fields(0).value ' alternative 1  
 res.movenext
wend
```


----------



## CrimeTime (25. Mai 2007)

ich habe nun dies probiert


```
Dim sql As String
Dim rs As New adodb.Recordset
Usaname = "armz"
sql = "SELECT password FROM users WHERE username = '" & Usaname & "'"
'select * from Tabelle where Text
rs.Open sql, Mysql_Connection
MySQL.Last_Query = rs.GetString
txttestx.Text = sql
rs.Close
```

aber es geht nicht


----------



## Alex F. (25. Mai 2007)

würde ich es mit like statt = versuchen wegen casesensitivity


----------



## CrimeTime (25. Mai 2007)

nun verstehe ich garnichts mehr, aber trozdem danke für deine hilfe  ich hoffe jemand kann mir noch weiterhelfen


----------



## Alex F. (25. Mai 2007)

das ist falsch 

```
rs.Open sql, Mysql_Connection
MySQL.Last_Query = rs.GetString
txttestx.Text = sql
rs.Close
```

mach es so 

```
rs.Open sql, Mysql_Connection
if not res.eof and not res.bof  then ' also wenn du einen DS hast 
 call MSGBOX (res!password ) 
end if
```

Grüsse bb 

PS die lösung hatte ich bereits in post 2 und 8 versteckt wenn du gut bist findest du auch noch die beiden alternativen zu meiner gerade eben 3. Wiederholung.


----------



## CrimeTime (25. Mai 2007)

umph habe nun knapp 2stunden rumgecodet, bekomme es nich hin.


----------



## Alex F. (29. Mai 2007)

Was hast du denn an Code ? Wenn es das oben ist musst du nur 

*
MySQL.Last_Query = rs.GetString
txttestx.Text = sql
*

mit dem Code von mir ersetzen.

Grüsse bb


----------



## CrimeTime (29. Mai 2007)

danke Brain, aber das Funktioniert schon seit Freitag, habe es doch noch hinbekommen, aber nun noch Interessant wäre ist wie man eine Spalte Updatet, also wenn ich zum Beispiel

text1.text mit dem was bisher existiert ersetzen möchte.


----------



## Alex F. (29. Mai 2007)

1. Möglichkeit


```
rs!Passwort = text1.text
rs.update
```

2. Möglichkeit

```
rs.Fields("Passwort").value  = text1.text
rs.update
```

3 Möglichkeit

```
Mysql_Connection.execute ( "Update tabelle1  set Passwort = ' " & text1.text & " '  WHERE Benutzer like 'Admin' ")
```

Grüsse bb


----------

